我们在HHVM上运行Repo权威模式的网站。
我可以使用hhvm --hphp -thhbc
编译代码文件。
但是,似乎还有一个功能是使用-tfilecache
创建静态文件缓存,它将用于提供静态文件,我无法使其工作。关于此功能的文档很少,我在Google上找不到任何内容。
我正在生成这样的文件列表:
find . -type f -not \( -name '*.php' -or -name '*.phtml' \) >/tmp/staticfiles
并尝试生成如下缓存:
hhvm --hphp -t filecache -v AllVolatile=true --input-list /tmp/staticfiles -l3
( - 为详细记录添加了l3)
,结果总是:
running hphp...
creating temporary directory /tmp/hphp_H98a3V ...
parsing inputs...
parsing inputs took 0'00" (145 us) wall time
Assertion failure: /tmp/tmp.jRkkBo6M6b/hphp/compiler/analysis/analysis_result.cpp:79: virtual HPHP::AnalysisResult::~AnalysisResult(): assertion `!m_finish' failed.
Core dumped: Aborted
Stack trace in /tmp/stacktrace.1767.log
hphp failed
running hphp took 0'01" (1257721 us) wall time
在该堆栈跟踪文件中没有任何内容。
我在列表中只尝试过一个或两个文件,结果相同。在RHEL 7.2上有HHVM 1.14.2和1.14.4经验。
这是一个错误还是我做错了什么?
答案 0 :(得分:0)
我打开了一个bug,他们用
快速回来了您可能希望同时创建repo和filecache。您可以将--file-cache / where / to / create / cache传递给用于构建hhbc repo的命令。
这就像一个魅力,我不知道你可以一起做这两个。
他们确实让这个bug开放了,所以看起来它应该是独立工作的。但这种方法对我来说足够好(实际上更好)