Matthew McCawley wrote:
I've run into the same issue as Adriano when running on a single, large table
about 1.4 GB in size. I enable autocommit before the compress statement and
disable it after. I have encountered the error when deleting portions of the
data as well as all of it. I also found that the compression would succeed
if I used a stack size of 2 MB and a maximum heap size of 1 GB (-Xss2048k
-Xmx1g). I'll be working with this more next week, so I'll see if anything
changes when working with a larger dataset.
You see the same kind of repeated stack in the error? This loop looks strange to me, and I don't think should be related to size of the tables: at org.apache.derby.iapi.store.raw.xact.RawTransaction.notifyObservers(Unknown Source)
at org.apache.derby.impl.store.raw.data.DropOnCommit.update(Unknown Source)
at java.util.Observable.notifyObservers(Observable.java:142)
at org.apache.derby.iapi.store.raw.xact.RawTransaction.notifyObservers(Unknown Source)
at org.apache.derby.impl.store.raw.data.DropOnCommit.update(Unknown Source)
at java.util.Observable.notifyObservers(Observable.java:142)
at org.apache.derby.iapi.store.raw.xact.RawTransaction.notifyObservers(Unknown Source)
at org.apache.derby.impl.store.raw.data.DropOnCommit.update(Unknown Source)
at java.util.Observable.notifyObservers(Observable.java:142)
at org.apache.derby.iapi.store.raw.xact.RawTransaction.notifyObservers(Unknown Source)
at org.apache.derby.impl.store.raw.data.DropOnCommit.update(Unknown Source)
at java.util.Observable.notifyObservers(Observable.java:142)
at org.apache.derby.iapi.store.raw.xact.RawTransaction.notifyObservers(Unknown Source)


There are some reported problems with the amount of memory in general that compres table uses, which are likely to be a different issue. For these memory issues it is helpful to post exactly what jvm you are using, what OS, and what flags you are giving the jvm. And how much memory is on your machine.

Derby was not originally created with vldb in mind, so multi-gigabyte tables could very well be exercising new code paths. Derby definitely
has the ability to perform index creations/sorts on tables bigger than
memory size, but there are some reported problems in its estimates of
how much memory it should use to do so.  These estimates can definitely
be affected by jvm startup flags.

Reply via email to