Translating with DrWatson… this can take a few seconds the first time.
This is a genuine, complex translation. DrWatson protects commands, error codes, and log output while naturally translating the surrounding text. It’s translated once and saved.
A user's Java batch-insert tool failed after about 250,000 rows with "could not insert new rows. Not enough core." Respondents explained this is an out-of-memory condition (ENOMEM) on the client/host rather than a server error, likely caused by objects being allocated per insert and garbage collection not keeping up, or by insufficient swap/ulimit settings; one poster noted seeing it on HP-UX due to too little swap (checked with swapinfo). Questions about driver, platform and how the batches are submitted went largely unanswered, and no confirmed fix is recorded.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
I have a java tool which is executing insert statement in batch, but after
some 250000 records it says that could not insert new rows. Not enough core.
When I have less records say (1000) it insert the records.
can anybody help what is this core and how to clear it. Is it java side error
or the informix error.
On Mon, Jan 3, 2011 at 1:57 PM, ABHISHEK LODHA <abhishek_lodha13@yahoo.co.in
> wrote:
> I have a java tool which is executing insert statement in batch, but after
> some 250000 records it says that could not insert new rows. Not enough
> core.
>
> When I have less records say (1000) it insert the records.
>
> can anybody help what is this core and how to clear it. Is it java side
> error
> or the informix error.
>
It's a client side error, saying that you don't have enough memory... You
could change it with ulimit, but I'd say the code has something wrong...
You're probably allocating some structures in each step that you don't
release...
Regards.
--
Fernando Nunes
Portugal
http://informix-technology.blogspot.com
My email works... but I don't check it frequently...
--0015174be67499f8a80498f1ad51
How is the tool performing the 'batch' inserts? Is it simply sending many
many individual INSERT statements? Is it creating a large 'batch' of INSERT
statements to submit as a single entity to the server? Is it opening an
INSERT CURSOR and using the PUT <cursorname> mechanism? If either of the
first two, it may be that the tool is not reusing the memory from each
'insert' but is allocating a new object for each relying on Java's garbage
collection to release the memory that is no longer needed. The garbage
collection may not be keeping up with the tool's speed of operation and it
is simply running out of memory for new objects because the garbage
collector has fallen behind.
With no idea how this 'tool' is designed, what libraries of database
interaction code are being used, you would have a better idea of what's
going on than we would. Also, what platform, Informix release, which data
interface are you using (ODBC bridge, .NET, or JDBC)? Are you using the
Informix sqli driver or the IBM Universal DRDA driver? What version of the
driver are you using?
Art
Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
IIUG Board of Directors (art@iiug.org)
Blog: http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Advanced DataTools, the IIUG, nor any other
organization with which I am associated either explicitly, implicitly, or by
inference. Neither do those opinions reflect those of other individuals
affiliated with any entity with which I am affiliated nor those of the
entities themselves.
On Mon, Jan 3, 2011 at 8:57 AM, ABHISHEK LODHA <abhishek_lodha13@yahoo.co.in
> wrote:
> I have a java tool which is executing insert statement in batch, but after
> some 250000 records it says that could not insert new rows. Not enough
> core.
>
> When I have less records say (1000) it insert the records.
>
> can anybody help what is this core and how to clear it. Is it java side
> error
> or the informix error.
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--001636c5a78fa0281d0498f218c2
The tool is Java based which takes the batch of many rows and insert them at
once. You said that may be the object is created again and again but we are
clearing the batch every time it has inserted.
We are using IDS 11.50UC5XE
KARL OLIVER — — source: IIUG Forums & Mailing Lists
I have seen this error on a HP-UX system it turned out that the Unix host did
not have enough swap disk assigened
#define ENOMEM 12 /* Not enough core
You may see an entry in informix message log
↪ replying to ABHISHEK LODHA
KARL OLIVER — — source: IIUG Forums & Mailing Lists
On HP-Ux
swapinfo
shows something like this
Kb Kb Kb PCT START/ Kb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 16777216 0 16777216 0% 0 - 1 /dev/vg00/lvol2
reserve - 5553824 -5553824
memory 12582912 7099968 5482944 56%
Your privacy choices
We use strictly necessary cookies to make this site work. With your
consent we’d also use optional cookies for analytics and marketing. You can accept all,
reject all, or choose. Read our Cookie Policy.