четверг, 13 июня 2013 г.

Гениально!

Отпарсили CSV одним запросом.
Красота

И свой вариант (с оракловым синтаксисом):
Таблицы:
Attribs (name varchar2(20), value_list blob) с данными в поле value_list, разделенными символом ;
afl (id int) - вспомогательная, с последовательными числами в поле ID


SELECT A.Name,  
NullIf(SubStr(';'||to_char(value_list)||';', 
              afl.ID, 
              instr(';'||to_char(value_list)||';',
                    ';',
                    afl.ID) - afl.ID),
       '') AS Word
FROM afl, ATTRIBS A
WHERE afl.ID <= Length(';'||to_char(value_list)||';')
AND SubStr(';'||to_char(value_list)||';', afl.ID - 1, 1) = ';' 
AND instr( ';'||to_char(value_list)||';', ';',afl.ID) - afl.ID > 0

понедельник, 3 июня 2013 г.

Не поднимается сеть. CentOS

При старте network получаю ошибку "Error, some other host already uses address"
Сначала думал, что проблемы где-то на уровне DNS-DHCP, там все в порядке, адрес не занят, все чисто.
Посмотрел в таблице ARP - тоже ничего такого.
Но я был близко. А дело вот в чем: при запуске сети arping проверяет соответствие мака и IP-адреса.
Решение драконовское, но иного не нашел: открываем /etc/sysconfig/network-scripts/ifup-eth
Находим вот эти строки:

if ! /sbin/arping -q -c 2 -w 3 -D -I ${REALDEVICE} ${ipaddr[$idx]} ; then
  net_log $"Error, some other host already uses address ${ipaddr[$idx]}."
  exit 1
fi

И комментируем их.
Решение нашел здесь