One note I forgot to add...

the error doesn't consistently happen during creation of the same
model. It's happened on different models being created, which also
leads me to think it might be a threading issue...

On Sep 2, 9:39 am, Bryan Richardson <[email protected]> wrote:
> 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