datajoint-python icon indicating copy to clipboard operation
datajoint-python copied to clipboard

Add complete support for server side insert with external storage

Open eywalker opened this issue 6 years ago • 2 comments

Currently when you do server side insert (i.e. insert from another relation) and if source and target both have an attribute on the same external storage, it works perfectly fine. However, if the external storage targets differ between the two tables, then it doesn't perform this properly.

eywalker avatar Jan 29 '18 10:01 eywalker

noted @fabiansinz something similar also doesn't work from MySQL-native to external e.g:

Target.insert(Source())

if target contains externals, we need to e.g.

Target.insert(Source.fetch())

etc.

ixcat avatar Apr 04 '18 16:04 ixcat

Yes, this is a problem since server-side cannot be performed in such cases and a fetch must be performed, possibly implicitly. I propose to simply throw an error at this time suggesting a insert from fetch. I prefer this solution to an implicit fetch because this may be more surprising.

dimitri-yatsenko avatar Feb 08 '19 19:02 dimitri-yatsenko