请在2024年Clojure状态调查!中分享您的想法。

欢迎加入!有关本网站的工作方式,请参阅关于页面获取更多信息。

0
core.rrb-vector

我在玩 Advent of Code,遇到第19个谜题的第二部分。

我有一个程序,主要在https://github.com/mattiasw2/adventofcode1/blob/master/src/adventofcode1/nineteen_b.clj中进行catvec和subvec操作。

出现ArrayIndexOutOfBoundsException异常33,clojure.core.rrb-vector.rrbt.Vector/fn--19277 (rrbt.clj:373)的最小示例是

ArrayIndexOutOfBoundsException 33 clojure.core.rrb-vector.rrbt.Vector/fn--19277 (rrbt.clj:373)

(puzzle-b 978)

(我正在使用(stest/check `puzzle-b))


我将程序重写为普通向量,一切均正常(除了我还没能运行大样本)

https://github.com/mattiasw2/adventofcode1/blob/master/src/adventofcode1/nineteen_c.clj

它运行正常。

6 答案

0
_Comment made by: michalmarczyk_

嗨,谢谢你报告!我认为我正在修复这个问题——至少看起来像是我在解决的问题的一个表现,我希望一旦这个修复完成,这个例子就应该会消失。无论如何,我会调查一下。
0

Comment made by: leif

我也遇到了这个错误,尤其是在执行了多次subvec/catvec操作并将元素插入向量中间的大向量(例如,大小 > 1000)之后。

不幸的是,这使这个库对我目前来说是不可用的,但如果这个问题得到修复,我将非常乐意回来使用它:)

0
_由 matteiasw 发表评论:

我已启动 collection-check,并在 require 中缺少 .core(缺省文件),请参阅https://github.com/mattiasw2/core.rrb-vector/commit/abef418cf6ceb7c293c54c224089b397990740bc

但现在 collection-check 失败了

执行 lein test :only clojure.core.rrb-vector-check/collection-check

(collection-check) 测试失败于 (rrb_vector_check.clj:8)
预期:(assert-vector-like 250 (fv/vector) gen/int)
  实际:(not (assert-vector-like 250 [] #clojure.test.check.generators.Generator{:gen #object[clojure.test.check.generators$sized$fn__1400 0x354e7004 "clojure.test.check.generators$sized$fn__1400@354e7004"]}))

执行 lein test clojure.core.rrb-vector-test

执行了 12 个测试,包含 54 个断言。
1 个失败,0 个错误。
测试失败。
0

由 matteiasw 发表评论:

我在https://github.com/ztellman/collection-check/issues/17上询问了如何获取更多信息,为什么不为类似向量。

0

由 jafingerhut 发表评论:

Michal,你提到你可能正在修复这个问题。从那条消息以来,我没有看到相关的提交。你是否可能有一些局部的修复/改进,其他人可以从中开始着手?当然,当然是从现有的代码开始,但我很好奇你是否有一些调查中的线索或指向。

0
参考:https://clojure.atlassian.net/browse/CRRBV-14(由 alex+import 报告)
...