Skip to content

bug: apisix-dashboard v2.5 make build failed on Huawei Kunpeng system #1832

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Molio-tan opened this issue Apr 27, 2021 · 19 comments
Closed
Assignees

Comments

@Molio-tan
Copy link

Issue description

Environment

  • apisix version (cmd: apisix version): v2.4
  • OS (cmd: uname -a): Linux localhost.localdomain 4.19.90-17.ky10.aarch64 change: added doc of how to load plugin. apisix#1 SMP Sun Jun 28 14:27:40 CST 2020 aarch64 aarch64 aarch64 GNU/Linux
  • OpenResty / Nginx version (cmd: nginx -V or openresty -V): openresty/1.19.3.1
  • etcd version, if have (cmd: run curl http://127.0.0.1:9090/v1/server_info to get the info from server-info API): v3.4.13
  • apisix-dashboard version, if have: v2.5
  • luarocks version, if the issue is about installation (cmd: luarocks --version): v3.6.0

Minimal test code / Steps to reproduce the issue

  1. apisix源码构建后正常启动./bin/apisix start
  2. 在apisix-dashboard内执行make build时报错了,如下图
    image
    image

What's the actual result? (including assertion message & call stack if applicable)

What's the expected result?

这个是因为鲲鹏系统的差异性导致最后构建失败的吗?
请求帮助,谢谢

@nic-chen
Copy link
Member

@juzhiyuan @LiteSun
Please take a look.

@spacewander spacewander transferred this issue from apache/apisix Apr 27, 2021
@Molio-tan
Copy link
Author

is anybody can help me ?haha

@LiteSun
Copy link
Member

LiteSun commented Apr 29, 2021

Thanks for reporting the problem, I'll try to reproduce it when I have time and I'll update here with any progress 😄

@Molio-tan
Copy link
Author

Thanks for reporting the problem, I'll try to reproduce it when I have time and I'll update here with any progress

Thank you anyway.I can't wait for the solution.

@qian0817
Copy link
Contributor

I suggest to also report this issue to yarn.

@imjoey
Copy link
Member

imjoey commented Apr 29, 2021

Hi @Molio-tan, thanks for reporting.

From the error logs, it seems that some of the npm packages are not compatible with Kylin v10 on ARM64. IMHO, the cause may be very complex. So in order to make it easier to get through with this, could you please add --verbose flag for both the yarn install and yarn build commands in https://github.com/apache/apisix-dashboard/blob/master/Makefile#L39? Then we may figure it out. Thanks.

BTW: could you please make another test by changing the Kylin v10 to Ubuntu 20.04 to see if the error still exists? Kylin v10 is probably based on openEuler 20.03 LTS and honestly, it may lack some packages, which may also cause similar problems. Moreover, Kylin v10 is a commercial product so we can hardly get it to reproduce the issue. Thanks.

@Molio-tan
Copy link
Author

Hi @Molio-tan, thanks for reporting.

From the error logs, it seems that some of the npm packages are not compatible with Kylin v10 on ARM64. IMHO, the cause may be very complex. So in order to make it easier to get through with this, could you please add --verbose flag for both the yarn install and yarn build commands in https://github.com/apache/apisix-dashboard/blob/master/Makefile#L39? Then we may figure it out. Thanks.

BTW: could you please make another test by changing the Kylin v10 to Ubuntu 20.04 to see if the error still exists? Kylin v10 is probably based on openEuler 20.03 LTS and honestly, it may lack some packages, which may also cause similar problems. Moreover, Kylin v10 is a commercial product so we can hardly get it to reproduce the issue. Thanks.

Firstly, I tried to add --verbose flag as you said
image
And then, the log as follows
image

Secondly, I sorry I couldn't have the Kylin v10 to Ubuntu 20.04 for another test.
Last, if there are any packages lacking on the Kylin v10 to ARM64 you figure out, I really appreciate that.

@nic-chen nic-chen changed the title bug: apisix-dashboard v2.5 make build 报错在华为鲲鹏系统上 bug: apisix-dashboard v2.5 make build failed on Huawei Kunpeng system Apr 30, 2021
@juzhiyuan
Copy link
Member

Hi @imjoey, do you have other solutions to resolve this issue? Should we file an issue to Yarn or NPM?

@imjoey
Copy link
Member

imjoey commented May 3, 2021

Hi @imjoey, do you have other solutions to resolve this issue? Should we file an issue to Yarn or NPM?

@juzhiyuan Sorry, I'm afraid not yet as the logs did not show enough details. Actually, as far as I know, both Yarn and NPM have good support for ARM64. IMHO, it's supposed that the reason is some npm packages are not compatible with Kylin V10 on ARM64. While unfortunately, I do not have an ARM64 environment to reproduce it. We can still get more info from @Molio-tan. 😄

@juzhiyuan
Copy link
Member

noted, thanks for clarification!

@imjoey
Copy link
Member

imjoey commented May 3, 2021

@Molio-tan the logs seem not very helpful. So could you please show us more information from the /var/log/message and dmesg command during the installation? I believe that they could give us some clues. Thanks.

@Molio-tan
Copy link
Author

@Molio-tan the logs seem not very helpful. So could you please show us more information from the /var/log/message and dmesg command during the installation? I believe that they could give us some clues. Thanks.

Ok, but I don't know exactly about how many lines or messages created during the installation.Forgive me to giving the whole file as follows.

messages.log
dmesg.log

@imjoey
Copy link
Member

imjoey commented May 6, 2021

@Molio-tan the logs seem not very helpful. So could you please show us more information from the /var/log/message and dmesg command during the installation? I believe that they could give us some clues. Thanks.

Ok, but I don't know exactly about how many lines or messages created during the installation.Forgive me to giving the whole file as follows.

messages.log
dmesg.log

@Molio-tan thanks for providing the logs, while I'm so sorry that I've to say I can find nothing useful to help us get through with this issue. Do you mind adding my WeChat majunjiev that I'm able to debug your environment? Thanks.

@Molio-tan
Copy link
Author

@Molio-tan the logs seem not very helpful. So could you please show us more information from the /var/log/message and dmesg command during the installation? I believe that they could give us some clues. Thanks.

Ok, but I don't know exactly about how many lines or messages created during the installation.Forgive me to giving the whole file as follows.
messages.log
dmesg.log

@Molio-tan thanks for providing the logs, while I'm so sorry that I've to say I can find nothing useful to help us get through with this issue. Do you mind adding my WeChat majunjiev that I'm able to debug your environment? Thanks.

No, I don't mind that. I had send the request for your Wechat.

@imjoey
Copy link
Member

imjoey commented May 7, 2021

I've already debugged with @Molio-tan personally, now I put the debug progress here with @Molio-tan's permission.

  1. Simply run yarn install --verbose under ./web directory
    image

  2. At the same time, see the output from /var/log/message:
    image

  3. Use coredumpctl info 16027 to see detailed coredump info
    image

Actually, we could find a similar issue nodejs/help#3202, which shows us that nodejs-v14&v15 is not compatible with Redhat8-aarch64 while nodejs-v12 is OK, and nodejs-v14&15 works well with ubuntu20.04-aarch64. From the snapshot in step 2, we could the reason for the crash is about nodejs itself.

Moreover, from the yum repository provided by Kylin, the default version of nodejs in kylin-v10 is nodejs-10.11.0, see the rpm package here http://archive.kylinos.cn/yum/v10/pks/aarch64/os/Packages/n/nodejs-10.11.0-1.ky10.aarch64.rpm .

In conclusion, IMHO, the root cause is about the incompatibility between nodejs version and Operating System.

So @Molio-tan will then downgrade the nodejs to 10.11.0 to recheck if the problem still exists and then post your result back here, Thank you very much.

@juzhiyuan
Copy link
Member

That's really helpful! @Molio-tan @imjoey

@Molio-tan
Copy link
Author

@imjoey The lower version of nodejs is helpful,but at the last of make build, a new error occurs as follows:
image
It seems that some packages are incompatible with nodejs of 10.11.0 version. The APISIX Dashboard version is 2.6+
Looking forward to the solution.

@imjoey
Copy link
Member

imjoey commented May 8, 2021

@imjoey The lower version of nodejs is helpful,but at the last of make build, a new error occurs as follows:

image

It seems that some packages are incompatible with nodejs of 10.11.0 version. The APISIX Dashboard version is 2.6+

Looking forward to the solution.

@Molio-tan Very glad to see it works. Regarding to the new error, an intuitive solution is to install the new 10.13.0-armv8 from official alternatively. In practice, minor version upgrade will not bring any incompatibility, so I guess this newer version will also work along with Kylin V10.

Looking forward to your feedback. Thanks.

@Molio-tan
Copy link
Author

@imjoey The lower version of nodejs is helpful,but at the last of make build, a new error occurs as follows:
image
It seems that some packages are incompatible with nodejs of 10.11.0 version. The APISIX Dashboard version is 2.6+
Looking forward to the solution.

@Molio-tan Very glad to see it works. Regarding to the new error, an intuitive solution is to install the new 10.13.0-armv8 from official alternatively. In practice, minor version upgrade will not bring any incompatibility, so I guess this newer version will also work along with Kylin V10.

Looking forward to your feedback. Thanks.

@imjoey Thank you for your help. After many times to download different versions of nodejs, I find the suitable version is v10.24.0.

wget https://nodejs.org/download/release/v10.24.0/node-v10.24.0-linux-arm64.tar.xz
tar -xf node-v10.24.0-linux-arm64.tar.xz
ln -s /opt/node-v10.24.0-linux-arm64/bin/node /usr/local/bin/
ln -s /opt/node-v10.24.0-linux-arm64/bin/npm /usr/local/bin/

At last, make build will work properly. Thank you all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants