csplit, segfault

Enleth enleth w enleth.com
Pon, 22 Sie 2005, 03:29:04 CEST


Musiałem właśnie podzielić 253MB zrzutu SQL na pliki konkretnych baz danych, 
ponad dwudziestu. Z szybkiego przejrzenia info coreutils wynikło, że się do 
tego przyda csplit. I oto, co uzyskałem:


[enleth] [03:07:55] [~/jaskinia/db]$ls -lh
total 253M
-rw-------  1 enleth users 253M Aug 13 10:47 dbdump.sql
[enleth] [03:07:58] [~/jaskinia/db]$csplit dbdump.sql '/Current Database/' 
'{*}'
661
Segmentation fault
[enleth] [03:08:04] [~/jaskinia/db]$ls -lh
total 255M
-rw-------  1 enleth users 253M Aug 13 10:47 dbdump.sql
-rw-------  1 enleth users  661 Aug 22 03:08 xx00
-rw-------  1 enleth users 1.8M Aug 22 03:08 xx01

Kilka kolejnych prób też się zatrzymało na 1.8MB. Na dodatek drugi plik 
wynikowy bynajmniej nie skończył się w prawidłowym miejscu, a prawidłowa 
treść jest w nim przemieszana z jakąś binarną sieczką, której w zrzucie 
zdecydowanie nie ma - ciÄ…gi binarnych zer i powtarzajÄ…cych siÄ™ sekwencji 
innych znaków niedrukowalnych, ot tak w środku SQLa.

Dalsze poszukiwania:

(gdb) run
Starting program: /usr/bin/csplit dbdump.sql /Current\ Database/ \{\*\}
(no debugging symbols found)
(no debugging symbols found)
661

Program received signal SIGSEGV, Segmentation fault.
0xb7e6a945 in memcpy () from /lib/tls/libc.so.6

W pliku jest SQL z treścią w cp1250 i UTF-8 - czyżby to dlatego, coś w csplit 
sobie nie radzi z wielobajtowymi znakami?

Na google nic o tym nie znalazłem. Niestety, fragmentu pliku udostępnić nie 
mogę ze względu na jego zawartość, ale sprawdzę każdą zaproponowaną 
ewentualność.

A tak na teraz - czym by można uzyskać tę samą funkcjonalność? Importowanie 
pliku do bazy odpada, bo zrzut obejmuje nawet tabele samego mysqld, a na 
dodatek dysponuję tu maszyną która sobie z tym średnio poradzi wydajnościowo 
(danych dużo więcej niż RAMu...), więc zależy mi na podzieleniu pliku do 
prostego uploadowania na serwer.

-- 
Remigiusz "Enleth" Marcinkiewicz, enleth w enleth.com, WWW enleth.com,
JID enleth@{chrome.pl|heroes.net.pl}
-------------- nastêpna czê¶æ ---------
Załącznik, który nie był tekstem został usunięty...
Name: nie znany
Type: application/pgp-signature
Size: 189 bytes
Desc: nie znany
Url : /mailman/pipermail/pld-users-pl/attachments/20050822/d01b413f/attachment-0001.bin


Wiêcej informacji o li¶cie dyskusyjnej pld-users-pl