Shadow error when trying to use ParallelTable
- To: mathgroup at smc.vnet.net
- Subject: [mg107487] Shadow error when trying to use ParallelTable
- From: Todd Allen <genesplicer28 at yahoo.com>
- Date: Sun, 14 Feb 2010 05:59:36 -0500 (EST)
Hi Everyone, I am trying to accelerate some code using ParallelTable, but when I do , I get the following error message: list::shdw: Symbol list appears in multiple contexts {Parallel`Preferences`,Global`}; definitions in context Parallel`Preferences` may shadow or be shadowed by other definitions. >> ---------------------- The basic outline of my code, which itself is INSIDE a module is: DistributeDefinitions[degenes, subraw, addonpos]; finaldegenes = Partition[ Flatten[ParallelTable[ Append[degenes[[i]], Flatten[Select[subraw, #1[[1]] == degenes[[i, 1]] &]][[ addonpos]]], {i, 1, Length[degenes]}, Method -> "CoarsestGrained"]], (Length[degenes[[1]]] + Length[addonpos])]; ------------------- All the variables are themselves in the Global context and I can say that the code does work without error, if I comment out the DistributeDefinitions statement, and revert to a Table command rather than ParallelTable. I have tried to fix this problem by referring to the variables by their full context name, such as: Parallel`Preferences`degenes without success. I have also tried localizing all variables inside the module, and I still get the shadow error regardless. Do you see anything obviously wrong? What strategies do you use to figure out shadow problems in your own code? The reason I ask, is because I have tried to further isolate this problem to see if the variable contexts are changing....but it is not obvious to me they are. This is a frustrating one. Thank you for any thoughts you might have! Todd