LiteSpeed on OpenSolaris

Discussion in 'Install/Configuration' started by benr, May 21, 2007.

  1. benr

    benr New Member

    I've run into some odd issues attempting to use LiteSpeed on recent releases of OpenSolaris (Nevada newer than about Build 56). LiteSpeed installs fine but won't start, and there is no clear reason why. Nothing is output to the logs that I see. Relevant truss output is included below.

    I know that on OpenSolaris B43 LiteSpeed works fine. I'm completely at a loss as to what changed and why it would impact LiteSpeed. I've tested both 3.0.3 and 3.1 for Solaris /X86:

    6871: umask(022) = 022
    6871: sysconfig(_CONFIG_PAGESIZE) = 4096
    6871: brk(0x08290030) = 0
    6871: brk(0x08294030) = 0
    6871: dup(2) = 3
    6871: fcntl(3, F_SETFD, 0x00000001) = 0
    6871: getcwd("/opt/lsws/bin", 512) = 0
    6871: xstat(2, "/opt/lsws/", 0x08045784) = 0
    6871: access("/opt/lsws/conf/httpd_config.xml", R_OK) = 0
    6871: open("/opt/lsws/conf/httpd_config.xml", O_RDONLY) = 4
    6871: brk(0x08294030) = 0
    6871: brk(0x082B4030) = 0
    6871: fstat64(4, 0x08043F90) = 0
    6871: brk(0x082B4030) = 0
    6871: brk(0x082B6030) = 0
    6871: fstat64(4, 0x08043EC0) = 0
    6871: ioctl(4, TCGETA, 0x08043F5C) Err#25 ENOTTY
    6871: read(4, " < ? x m l v e r s i o".., 8192) = 8192
    6871: brk(0x082B6030) = 0
    6871: brk(0x082B8030) = 0
    6871: brk(0x082B8030) = 0
    6871: brk(0x082BA030) = 0
    6871: brk(0x082BA030) = 0
    6871: brk(0x082BC030) = 0
    6871: brk(0x082BC030) = 0
    6871: brk(0x082BE030) = 0
    6871: brk(0x082BE030) = 0
    6871: brk(0x082C0030) = 0
    6871: brk(0x082C0030) = 0
    6871: brk(0x082C2030) = 0
    6871: brk(0x082C2030) = 0
    6871: brk(0x082C4030) = 0
    6871: read(4, " < e n a b l e d > 1 < /".., 8192) = 1795
    6871: read(4, 0x082B3804, 8192) = 0
    6871: llseek(4, 0, SEEK_CUR) = 9987
    6871: close(4) = 0
    6871: readlink("/opt", 0x08044405, 4094) Err#22 EINVAL
    6871: xstat(2, "/home/benrlsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/home/benrlsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/local/lsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/local/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/opt/lsws/", 0x08045524) = 0
    6871: access("/opt/lsws/conf/httpd_config.xml", R_OK) = 0
    6871: readlink("/opt", 0x080441A5, 4094) Err#22 EINVAL
    6871: xstat(2, "/opt/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/lsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/var/lsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/var/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/home/lsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/home/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/share/lsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/share/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/local/share/lsws/", 0x08045524) Err#2 ENOENT
    6871: xstat(2, "/usr/local/share/lsws/lshttpd/", 0x08045524) Err#2 ENOENT
    6871: fstat64(2, 0x08044AF0) = 0
    6871: write(2, "\0\0\0\0\0\0\0\0\0\0\0\0".., 18445580) Err#14 EFAULT
    6871: _exit(1)
    6864: waitid(P_PID, 6871, 0x08047840, WEXITED|WTRAPPED|WNOWAIT) = 0
    6864: ioctl(0, TIOCGPGRP, 0x080478A0) = 0
    6864: ioctl(0, TCGETS, 0x08077DC8) = 0
    6864: waitid(P_PID, 6871, 0x08047840, WEXITED|WTRAPPED) = 0
    [ERROR] Failed to start lshttpd!
    6864: write(1, " [ E R R O R ] F a i l".., 33) = 33
    6864: brk(0x0807AD98) = 0
    6864: unlink("/tmp/sh68640") = 0
    6864: _exit(1)


    Any ideas are welcome.

    benr.
  2. mistwang

    mistwang LiteSpeed Staff

    The ABI for 32bit application built on solaris 8 has been broken on this open solaris release as well as the latest B63. Maybe you should stick with Sun's offical releases or switch to our 64bit binary.
  3. benr

    benr New Member

    Is there any chance of a 64bit release of the free version?
  4. mistwang

    mistwang LiteSpeed Staff

    No plan yet.
  5. benr

    benr New Member

    Do you have any evidence of this? Can you be more specific about what broke?

    benr.
  6. mistwang

    mistwang LiteSpeed Staff

    Probably related to the storage of "errno",
    Code:
    if ( errno != EINVAL )
    is ture when "readlink()" function returns with error EINVAL in your truss output, no problem with the 64bit binary.

    And truss output does not show the correct content for the write function
    Code:
    write(2, "\0\0\0\0\0\0\0\0\0\0\0\0".., 18445580)
  7. artagesw

    artagesw New Member

    Is this a Sun problem, or something that can be addressed by recompiling LiteSpeed for newer versions of Solaris?

    This is a major bummer as I was relying on the ability to run LiteSpeed on my Joyent accelerator (vps)...
  8. mistwang

    mistwang LiteSpeed Staff

    Are you having this issue now on Joyent accelerator?
    It might be able to be addressed by building LiteSpeed for the newer version of Solaris, but we'd rather not to keep adding binaries for Solaris, it is a big pain to maintain all of them for a small user base.
  9. artagesw

    artagesw New Member

    I have not tried to install it yet. But based on benr's (who is the Accelerator guru over at Joyent unless there is another benr trying to run LiteSpeed on OpenSolaris) above comments, I am assuming he has been unable to get LiteSpeed to run there.

    I'm sorry it is a "big pain" to maintain several versions and I don't mean to sound ungrateful. But you have chosen to make your product closed-source, which is what makes it impossible for users to compile it for ourselves. Also, now that Joyent is using OpenSolaris, I think the potential user base may start to grow rather quickly....
    Last edited: Jun 12, 2007
  10. mistwang

    mistwang LiteSpeed Staff

    Maybe we should stop offering the free standard edition if most of our standard edition users think this way.

    We will see.

    On the other hand, the 64bit enterprise binary does work well, the upcoming vps offeringis plus monthly subscription make it even more affordable. We don't see the need of offering everything for free, especially when users are not grateful for what we have been doing.
  11. artagesw

    artagesw New Member

    Well, I *am* grateful for what you have been doing. I think you have a great product. (And I specifically stated not to take my words as being "ungrateful.") And I am sure that providing the Standard edition leads to many sales of the Enterprise edition, so I would think it would be beneficial to provide it to as many users as possible. I know I am in that camp. I am evaluating the Standard edition now. And if it all goes well (so far it has), I will very likely be an Enterprise customer in the future.

Share This Page