我们使用的数据库版本是Debian 4.9.210-1 + deb9u1上的MonetDB 5服务器v11.37.7(2020年6月)。
我有一张大约有2200万个条目的常规表。我添加了一个布尔列:
model_LSTM(X[:batch_size,:]
现在,当我尝试查询表时,出现此错误:
ValueError: Layer LSTM_1 was called with an input that isn't a symbolic tensor. Received type: <class 'numpy.ndarray'>. Full input: [array([[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
3.92742126e-05, 3.92742126e-05, 3.92742126e-05],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
3.92742126e-05, 3.92742126e-05, 3.92742126e-05],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
5.30201869e-03, 2.12080748e-03, 3.92742126e-05],
...,
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
3.92742126e-05, 3.92742126e-05, 3.92742126e-05],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
5.33383081e-01, 5.33383081e-01, 3.92742126e-05],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
1.99395177e-01, 1.99395177e-01, 1.99395177e-01]])]. All inputs to the layer should be tensors.
删除添加的列,重新启动Monet,但仍然是相同的错误。文件merovingian.log显示:
alter table conversations add column "virtual" Boolean Null ;
有什么想法可以解决此问题或如何对其进行进一步调试吗?
谢谢!
答案 0 :(得分:1)
这听起来像是个错误,但我无法复制它:
sql>create table foo(i int);
operation successful
sql>insert into foo select * from generate_series(0,22000000);
22000000 affected rows
sql>alter table foo add column b boolean null;
operation successful
sql>select * from foo where i % 2200000 = 42;
+----------+-------+
| i | b |
+==========+=======+
| 42 | null |
| 2200042 | null |
| 4400042 | null |
| 6600042 | null |
| 8800042 | null |
| 11000042 | null |
| 13200042 | null |
| 15400042 | null |
| 17600042 | null |
| 19800042 | null |
+----------+-------+
10 tuples
这看起来不错,但是也许我误解了您的情况。 如果可能的话,请尝试创建一个独立的脚本来重现上面示例中的问题,然后将其作为错误提交给MonetDB Bug Tracker
最诚挚的问候,
Joeri