- 
                Notifications
    You must be signed in to change notification settings 
- Fork 42
Open
Labels
awaiting-triageIssues awaiting proper priority/milestone assignment.Issues awaiting proper priority/milestone assignment.bug
Description
Bug Report
Description
In a newer version of DataJoint, empty matrices ([]) are inserted into a table as NULL rather than a longblob representing the empty set. This results in discrepancies when fetching data uploaded by different versions.
Reproducibility
- OS: Windows Server 2016 Standard
- MATLAB Version: R2022a
- MySQL Version: 8.0.29
- MySQL Deployment Strategy: Uncertain
- DataJoint Version: 3.5.0
- Minimum number of steps to reliably reproduce the issue:
- Create a table with a longblob attribute that is non-nullable. In this example the attribute is defined as puff: longblob
- Insert [] into this attribute
- Complete error stack as a result of evaluating the above steps:
Error using dj.Relvar/insert/makePlaceholder
attribute `puff` is not nullable.
Error in dj.Relvar/insert (line 353)
                    [v, placeholder] = makePlaceholder(i, tuple.(header.attributes(i).name));
Error in experiment.TrialSummary/makeTuples (line 144)
            insert(self, key)
Error in dj.internal.AutoPopulate/taskCore (line 215)
                self.makeTuples(key)
Error in dj.internal.AutoPopulate>@(key,fun,args)fun(args{:}) (line 129)
                rels{i}.executionEngine = @(key, fun, args) fun(args{:});
Error in dj.internal.AutoPopulate/populate_ (line 327)
                                    self.executionEngine(key, @taskCore, {self, key})
Error in dj.internal.AutoPopulate/populate (line 130)
                [varargout{1:nargout}] = rels{i}.populate_(varargin{:});
Expected Behavior
When a [] is inserted, we expect it to be stored as a longblob which reads as [] when the data is fetched. This is the behavior of another machine with the following specifications:
- OS: Windows 10 Pro
- MATLAB Version: R2019a
- MySQL Version: 8.0.29
- MySQL Deployment Strategy: Uncertain
- DataJoint Version: 3.3.1
Metadata
Metadata
Assignees
Labels
awaiting-triageIssues awaiting proper priority/milestone assignment.Issues awaiting proper priority/milestone assignment.bug