|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Добрый день, помогите плиз разобраться с легчайшим вопросом,не могу вставить строку в таблицу,вылазит ошибка error -271 could not insert new row into the table. захожу в описание таблицы: create table *.* ( ...................) extent size 16777216 next size 16777216 lock mode page; create index * on *.* ( .... ) in indxdbs; эта таблица находится в tablespace archive,в котором я добавил 5чанков по 16Гб,т.е. экстенты выделить себе он может. место для индекса тоже есть,также добавил чанков. куда еще можно копнуть?я не понимаю,что случилось-то?помогите плиз ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 15:41 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
LudeV, говорит,что не может выделить новый экстент,но ведь место в табл. пространстве есть и достаточно. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 15:56 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
LudeV, есть ограничение на количество extents в таблице ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 16:08 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
порядка 200 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 16:12 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
ТанLudeV, есть ограничение на количество extents в таблице Можно заранее легко проверить и для других таблиц, чтобы не быть застигнутым внезапной проблемой, которые случаются , обычно, в самый не подходящий момент: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 16:43 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
vasilis, этой таблице все было выделено 2 экстента по 16Гб,а третий он не может себе выделить ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 17:06 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
vasilis, dbname18 tablespace18 free_ext exts total_size_pg archive * 223 2 16777215 второй запрос не вернул ничего ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 17:09 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Эх, сколько уже раз повторялось... ...отсюда http://www.sql.ru/forum/actualthread.aspx?tid=229806 ------------- 2. Помните, что это форум информиксоидов, а не телепатов, поэтому предоставьте максимально точную и полную информацию об ошибке и вашей среде. 3. ОБЯЗАТЕЛЬНО укажите точную версию IDS и используемую платформу. 4. Подробно опишите ситуацию, при которой происходит ошибка. ОБЯЗАТЕЛЬНО скопируйте сообщение об ошибке, а не пересказывайте его своими словами ------------- ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 20:30 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
vasilis, IBM Informix Dynamic Server Version 11.50.FC6 платформа Red Hat Enterprise Linux Server release 6.1 (Santiago) ошибка возникает при вставке в таблице любой записи,даже 1 строки,ошибку прикрепил ниже Помогите плиз ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 09:29 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Во всех табличных пространствах место добавил, еще прикладываю картинку, которую показывает server studio про storage этой таблицы. Он видит,что еще много свободного места,но не выделяет себе экстент,непонятно почему(( IBM Informix Dynamic Server Version 11.50.FC6 -- On-Line -- Up 192 days 18:16:11 -- 15987492 Kbytes Dbspaces address number flags fchunk nchunks pgsize flags owner name 395a13028 1 0x40001 1 1 2048 N B informix rootdbs 397cc2da8 2 0x42001 2 1 2048 N TB informix tempdbs1 397cc3028 3 0x42001 3 1 2048 N TB informix tempdbs2 397cc31c0 4 0x42001 4 1 2048 N TB informix tempdbs3 397cc3358 5 0x40001 5 16 2048 N B informix archive 397cc34f0 6 0x40001 16 4 2048 N B informix logdbs 397cc3688 7 0x40001 19 3 2048 N B informix indxdbs 7 active, 2047 maximum Chunks address chunk/dbs offset size free bpages flags pathname 395a131c0 1 1 0 1000000 966085 PO-B- /usr/informix/data/rootdbs 397cc3820 2 2 0 4194736 4194683 PO-B- /usr/informix/data/tempdbs1 397cc3a10 3 3 0 4194736 4194683 PO-B- /usr/informix/data/tempdbs2 397cc3c00 4 4 0 4194736 4194683 PO-B- /usr/informix/data/tempdbs3 397cc3df0 5 5 0 8389040 785273 PO-B- /usr/informix/data/archive/archive.000 397cc7028 6 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.001 397cc7218 7 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.002 397cc7408 8 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.003 397cc75f8 9 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.004 397cc77e8 10 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.005 397cc79d8 11 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.006 397cc7bc8 12 5 0 8389040 429 PO-B- /usr/informix/data/archive/archive.007 397cc7db8 13 5 0 8389040 430 PO-B- /usr/informix/data/archive/archive.008 397cc9028 14 5 0 8389040 430 PO-B- /usr/informix/data/archive/archive.009 397cc9218 15 5 0 8389040 430 PO-B- /usr/informix/data/archive/archive.010 397cc9408 16 6 0 8389040 379 PO-B- /usr/informix/data/logdbs/logdbs.000 397cc95f8 17 6 0 8389040 429 PO-B- /usr/informix/data/logdbs/logdbs.001 397cc97e8 18 6 0 8389040 429 PO-B- /usr/informix/data/logdbs/logdbs.002 397cc99d8 19 7 0 8389040 18220 PO-B- /usr/informix/data/indxdbs/indxdbs.000 397cc9bc8 20 7 0 8389040 5261197 PO-B- /usr/informix/data/indxdbs/indxdbs.001 397cc9db8 21 7 0 8389040 8389037 PO-B- /usr/informix/data/indxdbs/indxdbs.002 397ccc028 22 5 0 8389040 8389037 PO-B- /usr/informix/data/archive/archive.011 399a5aab8 23 6 0 8389040 8389037 PO-B- /usr/informix/data/logdbs/logdbs.003 39a5696f8 24 5 0 8389040 8389037 PO-B- /usr/informix/data/archive/archive.012 39a692d10 25 5 0 8389040 8389037 PO-B- /usr/informix/data/archive/archive.013 39a527ce8 26 5 0 8389040 8389037 PO-B- /usr/informix/data/archive/archive.014 399bb8028 27 5 0 8389040 8389037 PO-B- /usr/informix/data/archive/archive.015 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 09:34 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
LudeV, ISAM error: no more extents. The database server needs to add an extent to a table but cannot do so. Either not enough disk space is available in the dbspace, or the table has been given the maximum number of extents that is allowed, or the maximum number of pages has been reached. Раз экстентов 2, значит уперлись в страницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 09:54 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
ТанLudeV, Раз экстентов 2, значит уперлись в страницы. Именно так . Проблему можно решить фрагментировав таблицу. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 10:33 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Как заметила Тан, вы уперлись в ограничение на количество страниц таблицы/партиции в одном пространстве. Ограничение на количество страниц - 16 775 134 Если вы недобрали до этого количества - измените некст сайз и возможно немного добавится. Но выход очевиден: или фрагментирование таблицы (ограничение относится к partition - т.е. partition м.б. в одном пространстве) или перенос данных в пространство с большим размером страниц. У вас, насколько я понимаю, это архивные данные. Как 1 из вариантов, чтобы не останавливать работу, можно поступить так: 1. переименовать старую таблицу 2. создать новую таблицу с нужной схемой хранения 3. в новую таблицу вставлять новые данные 4. в "фоновом" режиме подливать данные со старой таблицы 5. после переноса удалить старую таблицу. Если возможен останов, то все эти действия можно выполнить в нетранзакционном состоянии - будет чуток быстрее. правда нужно делать потом архив. Воможны и другие варианты, но там меняется только техника выполнения. Да, и с индексами после переноса данных нужно поступить соответственно. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 10:46 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
яфшуеі, ведь ничего же страшного не произойдет,если я с таблицы с размером страниц 2Кб буду перекидывать данные в таблицу с размером страниц 16Кб? это всего лишь размер страниц для хранения данных или я ошибаюсь и так нельзя? спасибо большое за помощь всем ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 12:31 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
LudeVяфшуеі, ведь ничего же страшного не произойдет,если я с таблицы с размером страниц 2Кб буду перекидывать данные в таблицу с размером страниц 16Кб? Можете. В 8 раз больше строк поместится. (В идеале). ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 12:52 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
klepa, спасибо большое! а подскажите, пожалуйста, как переименовать таблицу?в доке не нашел,искал вот тут и не нашел http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls107.htm ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 12:53 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
LudeV, нашел,спасибо. вопрос закрыт ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2012, 13:11 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
LudeV, Если будете использовать dbspace с размером страниц не по умолчанию, надо будет сконфигурировать для таких страниц отдельный буферный пул. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 12:14 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
AndronЕсли будете использовать dbspace с размером страниц не по умолчанию, надо будет сконфигурировать для таких страниц отдельный буферный пул. Даже для архивной таблицы, используемой только для единичной записи каждой страницы ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 12:49 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
ИМХО он сам создастся отсюда: Код: sql 1.
Не факт, что он будет оптимален, но поправить всегда можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 13:46 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
klepaИМХО он сам создастся отсюда: Код: sql 1.
Поясните, пожалуйста. И сколько , по вашему, default ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 15:01 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5.
Скока скажете. Тут 10 тыщ страниц. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 15:32 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
vasilis, Для любой таблицы с размером страницы отличным от размера страницы по умолчанию ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 16:54 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
При этом размер страницы по умолчанию определен для каждой платформы: AIX и Windows 4K, Linux 2K ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 16:56 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Andronvasilis, Для любой таблицы dbspace с размером страницы отличным от размера страницы по умолчанию Т.е. для dbspace с размером страницы отличным от размера страницы по умолчанию надо сконфигурировать соотв. буферный пул с таким же размером страницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2012, 16:58 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Andron, по-моему, ты запутался. 1. При старте сервера для всех определённых в конфиге буферпулов с конкретным размером страницы будут созданы соответствующие буферпулы (default - это не конкретный размер). Т.е. строка с default на данном этапе игнорируется. 2. Для каждого dbspace проверяется: а) если уже создан буферпул с таким же размером страницы, как у этого dbspace, то этот буферпул будет обслуживать этот dbspace. б) если ещё не создан буферпул с таким же размером страницы, как у этого dbspace, то будет создан буферпул с размером страницы как у данного dbspace и с прочими параметрами, как описано для буферпула с default, и этот созданный буферпул будет обслуживать этот dbspace. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2012, 02:31 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Andronvasilis, Для любой таблицы с размером страницы отличным от размера страницы по умолчанию Это ответ на какой вопрос ? (не ленитесь цитировать....) Если на тот вопрос, где я спрашивал Даже для архивной таблицы, используемой только для единичной записи каждой страницы ? Т.е. если мы создали таблицу в дбспейсе с нестандартным размером страницы (напр. 16), то мы ОБЯЗАНЫ создать и соответствующий буф.пул ? Я правильно вас понял ? Если такого пула не будет, то сможем мы вообще работать с таблицей (не говорим о производительности) ? P.S. Если АнатоЛой (которого я прочитал уже после написания) прав (судя по всему так оно и есть), то ответ на последний вопрос положительный. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2012, 19:03 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Суть параметра BUFFERPOOL default, ...: 1. у сервера есть параметры для автоматического добавления буферпула без рестарта сервера при добавлении дбспейса с размером страницы, который на сервере ещё не используется... (для админов, не читающих доки) 2. облегчение жизни читающему админу, чтобы не запоминать и не заполнять все параметры буферпула, динамически создаваемого админом перед созданием dbspace с "новым" размером страницы. Кратко и внятно здесь . ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2012, 20:27 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
vasilis, Для dbspace с определенным размером страницы ( отличным от размера страницы по умолчанию на данной платформе ) как я выше написал, создается буферный пул с таким же размером страницы. Тут никаких двояких толкований нет, АнатоЛой привел выше ссылку на документацию. Таблица находящаяся в любом dbspace будет использовать определенный для этого dbspace буферный пул. Т.е. если создан dbspace с размером страницы 8K то для таблиц в нем будет использован буферный пул с размером блока 8K. Как видите ничего сложного. Как создается буферный пул для dbspace с размером страницы не по умолчанию (вручную или при создании dbspace) это уже другой вопрос, который тут не задавали, поэтому я на него и не отвечал. АнатоЛой, Говоря про размер страницы по умолчанию я имел ввиду не тот default который есть в конфиге в параметре BUFFERPOOL а именно размер страницы для конкретной платформы на которой работает Informix. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2012, 21:02 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Конечно термин "размер страницы по умолчанию" немного запутывает если не знаешь о чем речь. Но это термин используемый в документации так что я не запутался (это к АнатоЛой) Если еще более кратко то в системе всегда присутствует 1 буферный пул для всех dbspace с таким размером страницы (по умолчанию). Остальные буферные пулы создаются (автоматически или вручную) при создании dbspace с другим размером страницы. Все это есть в доке. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2012, 21:12 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
AndronТ.е. для dbspace с размером страницы отличным от размера страницы по умолчанию надо сконфигурировать соотв. буферный пул с таким же размером страницы. Andron, всё ок. Меня немного смутила категоричность, выделенная жирным. Любимый встречный вопрос кума на такие фразы "Кому надо?" :). Т.е. имеющийся "BUFFERPOOL default,..." иногда таки выручает тех, кто забыл сконфигурировать соответствующий буферпул, и им ничего не надо. А иногда может оказать медвежью услугу - "оно" автоматом заработало, а почему так много съело памяти, или почему так тормозят запросы - непонятно и нужно гораздо больше опыта, чтобы разобраться уже с этой проблемой. Как по мне, лучше бы уж попытка создать dbspace без нужного буферпула приводила к ошибке с корректной формулировкой и посылом к onparams -b (ну и не давала стартовать сервер без необходимых описанных буферпул в конфиге) - и тем самым подтолкнула админа к чтению доки. Всё равно дбспейсы с новым размером страницы из воздуха не берутся. И это ещё один типичный пример как имя и формат параметра придумывается из экономии по разработке, а не по удобству использования... Имхо, BUFFERPOOL_DEFAULTS смотрелся бы "органичней", а появление "нового" параметра привекло бы внимание админов :). ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2012, 21:31 |
|
не получается вставить строку в таблицу.Помогите разобраться плиз
|
|||
---|---|---|---|
#18+
Andronvasilis, Таблица находящаяся в любом dbspace будет использовать определенный для этого dbspace буферный пул. Т.е. если создан dbspace с размером страницы 8K то для таблиц в нем будет использован буферный пул с размером блока 8K. Как видите ничего сложного. А у меня были с этим сложности? Об этом я знаю и достаточно давно (с тех пор, как появилась возможность конфигурировать спейсы с различным размером страниц). Вы, почему то, упорно не хотите замечать мои ударения в вопросах, т.к. я, в итоге, хотел услышать другое. Напомню, что началось все с того, что меня, как и АнатоЛой, смутило утверждение НАДО AndronЕсли будете использовать dbspace с размером страниц не по умолчанию, надо будет сконфигурировать для таких страниц отдельный буферный пул. и мои последующие вопросы, в частности "Если такого пула не будет, то сможем мы вообще работать с таблицей (не говорим о производительности) ?". Т.е. предположим, что нет механизма автоматического создания нестандартного буф.пула (с нестандартным размером страницы), например, выбросили по незнанию строку Код: sql 1.
и вручную не создали. Так вот, снова хочу спросить то же самое: "Если такого пула не будет, то сможем мы вообще работать с таблицей (не говорим о производительности) ?", т.е. обязателен ли этот нестандартный пул ? Проще всего, конечно, было бы проверить практически, но у меня, к сожалению, сейчас такой возможности нет, да и полезно иногда проверить свое понимание внутренних механизмов и предсказать теоретически. На мой взгляд, для работы есть все необходимое (тот же bigbuffer может быть универсальным механизмом для чтения страниц нестандартного размера), но это только мое предположение. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2012, 17:08 |
|
|
start [/forum/topic.php?all=1&fid=44&tid=1607208]: |
0ms |
get settings: |
6ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
37ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
538ms |
get tp. blocked users: |
0ms |
others: | 298ms |
total: | 894ms |
0 / 0 |