Hello,

I'm using DataMapper with JRuby using the Java version of DataObjects
and do_postgres, along with do_jdbc and jdbc_postgres.

The reason I'm using JRuby is because I need real threads to speed up
my application (I'm parsing large data files and putting the data
parsed into a database). The models I'm persisting via different
threads all have the same model instance as a parent model (i.e. each
new model created in separate threads has a Simulation model with ID =
5 that it belongs to).

After a while of parsing, I get the following error:

@@@
F, [2010-09-02T09:21:36.926000 #7903] FATAL -- : instance variable
@_save_parents_sentinel not defined (NameError)
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in
`remove_instance_variable'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1236:in `run_once'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1047:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1051:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in `each'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in `map'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1234:in `run_once'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1047:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1051:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in `each'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in `map'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1048:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1234:in `run_once'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1047:in `save_parents'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1018:in `_save'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1234:in `run_once'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:1017:in `_save'
/home/scrapcoder/devel/simulator/src/configurator/vendor/data-mapper/
dm-core-1.0.0/lib/dm-core/resource.rb:417:in `save'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:308:in `parse_generator_data'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:221:in `filter'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:67:in `each'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:67:in `filter'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:66:in `open'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:66:in `filter'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:42:in `parse'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:41:in `initialize'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:41:in `new'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:41:in `parse'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:38:in `each'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/parsers/
epc.rb:38:in `parse'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/
configurator.rb:12:in `parse_input_files'
/home/scrapcoder/devel/simulator/src/configurator/lib/sim/
configurator.rb:73:in `parse'
bin/sim-config:93:in `run'
/home/scrapcoder/devel/simulator/src/configurator/vendor/main/
main-4.2.0/lib/main/program/class_methods.rb:147:in `run'
/home/scrapcoder/devel/simulator/src/configurator/vendor/main/
main-4.2.0/lib/main/program/class_methods.rb:135:in `catch'
/home/scrapcoder/devel/simulator/src/configurator/vendor/main/
main-4.2.0/lib/main/program/class_methods.rb:135:in `run'
/home/scrapcoder/devel/simulator/src/configurator/vendor/main/
main-4.2.0/lib/main/factories.rb:18:in `run'
/home/scrapcoder/devel/simulator/src/configurator/vendor/main/
main-4.2.0/lib/main/factories.rb:25:in `Main'
bin/sim-config:11
@@@

I'm not sure what this means exactly, but might it be due to the
parent model trying to be (re)saved for some reason at the same time
by different models being created in different threads? Anyone have an
idea of what's going on?

--
Thanks!
Bryan

-- 
You received this message because you are subscribed to the Google Groups 
"DataMapper" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/datamapper?hl=en.

Reply via email to