Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-6395

memcachedprocess does not start on windows 8/ windows 2012

    Details

      Description

      reported by a user . dont have logs yet.

      1. 0001-issue-511-implemented-rel8-jump-patching.patch
        5 kB
        Aleksey Kondratenko
      2. 0002-issue-511-recognise-rex.w-jmpq-literal-rip-as-iat-ju.patch
        2 kB
        Aleksey Kondratenko
      3. libtcmalloc_minimal-4.dll
        1.72 MB
        Aleksey Kondratenko

        Issue Links

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

          farshid Farshid Ghods (Inactive) created issue -
          Hide
          peter peter added a comment -

          This is a post 2.0 requirement.

          Show
          peter peter added a comment - This is a post 2.0 requirement.
          peter peter made changes -
          Field Original Value New Value
          Fix Version/s .next [ 10342 ]
          Fix Version/s 2.0 [ 10114 ]
          Hide
          farshid Farshid Ghods (Inactive) added a comment -

          Port server memcached on node 'ns_1@169.254.168.17' exited with status 255. Restarting. Messages: Check failed: false && "Unable to patch because there is an unhandled branch " "instruction in the initial preamble bytes.": false && "Unable to patch because there is an unhandled branch " "instruction in the initial preamble bytes."

          This application has requested the Runtime to terminate it in an unusual way.
          Please contact the application's support team for more information.

          Show
          farshid Farshid Ghods (Inactive) added a comment - Port server memcached on node 'ns_1@169.254.168.17' exited with status 255. Restarting. Messages: Check failed: false && "Unable to patch because there is an unhandled branch " "instruction in the initial preamble bytes.": false && "Unable to patch because there is an unhandled branch " "instruction in the initial preamble bytes." This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.
          farshid Farshid Ghods (Inactive) made changes -
          Summary couchbase server 2.0 does not start on windows 8 RTM memcached/ep-engine process does not start on windows 8 RTM ( exit status 255 )
          Hide
          farshid Farshid Ghods (Inactive) added a comment -

          there is also some minor issue in the UI logs

          'ns_1@169.254.168.17' in 0.26s
          supervisor_cushion001 ns_1@169.254.168.17 14:20:35 - Fri Aug 24, 2012
          Client-side error-report for user "Administrator" on node 'ns_1@169.254.168.17':
          User-Agent:Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
          Got unhandled error: Object doesn't support this action
          At: http://localhost:8091/js/cells.js:64
          Backtrace:
          Function: collectBacktraceViaCaller
          Args:

          ---------
          Function: appOnError
          Args:
          "Object doesn't support this action"
          "http://localhost:8091/js/cells.js"
          64
          30
          ---------
          Function: (function ()

          {throw e;}

          )
          Args:

          ---------

          Show
          farshid Farshid Ghods (Inactive) added a comment - there is also some minor issue in the UI logs 'ns_1@169.254.168.17' in 0.26s supervisor_cushion001 ns_1@169.254.168.17 14:20:35 - Fri Aug 24, 2012 Client-side error-report for user "Administrator" on node 'ns_1@169.254.168.17': User-Agent:Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0) Got unhandled error: Object doesn't support this action At: http://localhost:8091/js/cells.js:64 Backtrace: Function: collectBacktraceViaCaller Args: --------- Function: appOnError Args: "Object doesn't support this action" "http://localhost:8091/js/cells.js" 64 30 --------- Function: (function () {throw e;} ) Args: ---------
          farshid Farshid Ghods (Inactive) made changes -
          Component/s couchbase-bucket [ 10173 ]
          Hide
          karan Karan Kumar (Inactive) added a comment -

          We would nede the browser logs attached here.

          Show
          karan Karan Kumar (Inactive) added a comment - We would nede the browser logs attached here.
          farshid Farshid Ghods (Inactive) made changes -
          Attachment ns-diag-20120824144333.zip [ 14585 ]
          farshid Farshid Ghods (Inactive) made changes -
          Summary memcached/ep-engine process does not start on windows 8 RTM ( exit status 255 ) memcached process does not start on windows 8 RTM ( exit status 255 )
          farshid Farshid Ghods (Inactive) made changes -
          Summary memcached/ep-engine process does not start on windows 8 RTM ( exit status 255 ) memcachedprocess does not start on windows 8 RTM ( exit status 255 )
          Hide
          wundram Chris Wundram added a comment -

          I managed to work around this. The problem was with the tcmalloc library. I replaced libtcmalloc_minimal-4.dll with a new dll with the same __tcmalloc export, and that resolved the issue.

          Show
          wundram Chris Wundram added a comment - I managed to work around this. The problem was with the tcmalloc library. I replaced libtcmalloc_minimal-4.dll with a new dll with the same __tcmalloc export, and that resolved the issue.
          Hide
          Orfeas Zafeiris Orfeas Zafeiris added a comment - - edited

          For anyone interested this is a x64 version of a 'wrapper' for libtcmalloc.
          Just place it in your couchbase 'bin' directory and restart the couchbase service.

          If anyone wants the x86 version feel free to ask.

          http://www.mediafire.com/?xc8nurnxjqr8klb

          PS: Thanks to Chris Wundram for the hint!

          Show
          Orfeas Zafeiris Orfeas Zafeiris added a comment - - edited For anyone interested this is a x64 version of a 'wrapper' for libtcmalloc. Just place it in your couchbase 'bin' directory and restart the couchbase service. If anyone wants the x86 version feel free to ask. http://www.mediafire.com/?xc8nurnxjqr8klb PS: Thanks to Chris Wundram for the hint!
          farshid Farshid Ghods (Inactive) made changes -
          Labels 2.0-release-notes
          Hide
          farshid Farshid Ghods (Inactive) added a comment -

          assinging this to myself so that as documentation for now so that we upload this file after getting permission from the owner and share this with users

          Show
          farshid Farshid Ghods (Inactive) added a comment - assinging this to myself so that as documentation for now so that we upload this file after getting permission from the owner and share this with users
          farshid Farshid Ghods (Inactive) made changes -
          Assignee Farshid Ghods [ farshid ]
          farshid Farshid Ghods (Inactive) made changes -
          Summary memcachedprocess does not start on windows 8 RTM ( exit status 255 ) memcachedprocess does not start on windows 8 RTM ( exit status 255 ) so workaround is to replace tcmalloc binary
          Component/s documentation [ 10012 ]
          Show
          sallgeud Chad Kreimendahl added a comment - http://www.couchbase.com/issues/browse/MB-7016
          farshid Farshid Ghods (Inactive) made changes -
          Fix Version/s 2.0.2 [ 10418 ]
          Fix Version/s .next [ 10342 ]
          Hide
          billrob458 Bill Robertson added a comment -

          Thanks Orfeas. I pulled the wrapper and replaced the dll in my folder and don't have the same constant failure errors. Windows 8 Pro 64bit.

          Show
          billrob458 Bill Robertson added a comment - Thanks Orfeas. I pulled the wrapper and replaced the dll in my folder and don't have the same constant failure errors. Windows 8 Pro 64bit.
          Hide
          maestrocoder Michael Elson added a comment -

          I'm troubleshooting a similar problem. I wrote code that runs fine on win7 64x but when I run on win8 64x I get this error "bucket count must be a power of 2!". where do I get this tcmalloc dll file? and where do I put in on my machine? maybe I missing something, but the above posts say this could be a fix for win8 issues, but for the tcmallow NOOB I have no idea what to do. can you please share the basic info?

          Show
          maestrocoder Michael Elson added a comment - I'm troubleshooting a similar problem. I wrote code that runs fine on win7 64x but when I run on win8 64x I get this error "bucket count must be a power of 2!". where do I get this tcmalloc dll file? and where do I put in on my machine? maybe I missing something, but the above posts say this could be a fix for win8 issues, but for the tcmallow NOOB I have no idea what to do. can you please share the basic info?
          Hide
          maestrocoder Michael Elson added a comment -

          please allow me to quickly answer my own post here...

          the 64x file to download is here: http://www.mediafire.com/?xc8nurnxjqr8klb

          the file goes here: Just place it in your couchbase 'bin' directory and restart the couchbase service.

          I read too quickly in my hasty approach to continue coding.

          Show
          maestrocoder Michael Elson added a comment - please allow me to quickly answer my own post here... the 64x file to download is here: http://www.mediafire.com/?xc8nurnxjqr8klb the file goes here: Just place it in your couchbase 'bin' directory and restart the couchbase service. I read too quickly in my hasty approach to continue coding.
          Hide
          ldsenow ldsenow added a comment -

          Replace the libtcmalloc_minimal-4.dll worked for me in 2.0 beta version on Windows 8
          after I have installed the 2.0 release version(tried both EE and CE), this trick does not make any difference. Now the service is started but I cant access to the Web console.
          Any idea why or work around?

          Show
          ldsenow ldsenow added a comment - Replace the libtcmalloc_minimal-4.dll worked for me in 2.0 beta version on Windows 8 after I have installed the 2.0 release version(tried both EE and CE), this trick does not make any difference. Now the service is started but I cant access to the Web console. Any idea why or work around?
          siri Sriram Melkote made changes -
          Link This issue is duplicated by MB-7016 [ MB-7016 ]
          siri Sriram Melkote made changes -
          Assignee Farshid Ghods [ farshid ] Sriram Melkote [ siri ]
          siri Sriram Melkote made changes -
          Labels 2.0-release-notes 2.0-release-notes windows
          dipti Dipti Borkar made changes -
          Rank Ranked higher
          siri Sriram Melkote made changes -
          Rank Ranked lower
          kzeller kzeller made changes -
          Component/s documentation [ 10012 ]
          Hide
          kzeller kzeller added a comment -

          removing documentation as component until we know confirm something should be documented....

          Show
          kzeller kzeller added a comment - removing documentation as component until we know confirm something should be documented....
          Hide
          sallgeud Chad Kreimendahl added a comment -

          The title of this bug needs to change to be "memcached does not start on Windows Server 2012 and Windows 8 because of bad tcmalloc binary". I don't believe the proper attention is being given to this issue, given that people running a released version of a windows server have to perform a workaround. The fix is unbelievably simple and still works on 2008r2, etc.

          Show
          sallgeud Chad Kreimendahl added a comment - The title of this bug needs to change to be "memcached does not start on Windows Server 2012 and Windows 8 because of bad tcmalloc binary". I don't believe the proper attention is being given to this issue, given that people running a released version of a windows server have to perform a workaround. The fix is unbelievably simple and still works on 2008r2, etc.
          siri Sriram Melkote made changes -
          Summary memcachedprocess does not start on windows 8 RTM ( exit status 255 ) so workaround is to replace tcmalloc binary memcachedprocess does not start on windows 8 RTM
          siri Sriram Melkote made changes -
          Summary memcachedprocess does not start on windows 8 RTM memcachedprocess does not start on windows 8
          Hide
          siri Sriram Melkote added a comment -

          Windows 2012 is not yet supported, and so there's no proper binary.
          However, Windows 2012 support is a priority item for upcoming 2.0.2 release.
          I'll also link an early build here as soon as it is available in the next few weeks.

          Show
          siri Sriram Melkote added a comment - Windows 2012 is not yet supported, and so there's no proper binary. However, Windows 2012 support is a priority item for upcoming 2.0.2 release. I'll also link an early build here as soon as it is available in the next few weeks.
          Hide
          maria Maria McDuff (Inactive) added a comment -

          per bug scrub: we'll continue to track win2012 for 2.0.2 release until the code freeze date but won't be a blocker for shipping 2.0.2. windows 8, however, will be a blocker though for the 2.0.2 release.

          Show
          maria Maria McDuff (Inactive) added a comment - per bug scrub: we'll continue to track win2012 for 2.0.2 release until the code freeze date but won't be a blocker for shipping 2.0.2. windows 8, however, will be a blocker though for the 2.0.2 release.
          maria Maria McDuff (Inactive) made changes -
          Priority Blocker [ 1 ] Critical [ 2 ]
          Hide
          maria Maria McDuff (Inactive) added a comment -

          siri still working on this.

          Show
          maria Maria McDuff (Inactive) added a comment - siri still working on this.
          Hide
          siri Sriram Melkote added a comment -

          Yes, definitely for 2.0.2 – Win 2012 and Win 8. Production worthiness depends on how much testing QE does.

          Show
          siri Sriram Melkote added a comment - Yes, definitely for 2.0.2 – Win 2012 and Win 8. Production worthiness depends on how much testing QE does.
          siri Sriram Melkote made changes -
          Assignee Sriram Melkote [ siri ] Trond Norbye [ trond ]
          maria Maria McDuff (Inactive) made changes -
          Summary memcachedprocess does not start on windows 8 memcachedprocess does not start on windows 8/ windows 2012
          Hide
          maria Maria McDuff (Inactive) added a comment - - edited

          per bug mtg, we will not be supporting win8/win2012 for 2.0.2.
          deferring to 2.1.

          Show
          maria Maria McDuff (Inactive) added a comment - - edited per bug mtg, we will not be supporting win8/win2012 for 2.0.2. deferring to 2.1.
          maria Maria McDuff (Inactive) made changes -
          Fix Version/s 2.1 [ 10414 ]
          maria Maria McDuff (Inactive) made changes -
          Fix Version/s 2.0.2 [ 10418 ]
          maria Maria McDuff (Inactive) made changes -
          Affects Version/s 2.0.1 [ 10399 ]
          Affects Version/s 2.0 [ 10114 ]
          Affects Version/s 2.0.2 [ 10418 ]
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment -

          Nailed. Expect tcmalloc patches attached here soon

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - Nailed. Expect tcmalloc patches attached here soon
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Assignee Trond Norbye [ trond ] Aleksey Kondratenko [ alkondratenko ]
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Fix Version/s 2.0.2 [ 10418 ]
          Fix Version/s 2.1 [ 10414 ]
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - - edited

          tcmalloc patches above are fixing this issue. They are rebased against our fork of tcmalloc.

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - - edited tcmalloc patches above are fixing this issue. They are rebased against our fork of tcmalloc.
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment -

          Folks who need working dll right now can grab libtcmalloc_minimal-4.dll that's attached. It's x86-64 .dll that's built from upstream tcmalloc with earlier versions of attached patches applied.

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - Folks who need working dll right now can grab libtcmalloc_minimal-4.dll that's attached. It's x86-64 .dll that's built from upstream tcmalloc with earlier versions of attached patches applied.
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Attachment libtcmalloc_minimal-4.dll [ 17265 ]
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment -

          Unaware that we've decide to move this out of 2.0.2 I spent some time on Friday and today and I believe fix this issue.

          Please allow this for 2.0.2.

          In case of positive decision I'd like this reassigned to Bin because he handles our fork of tcmalloc. So that he can grab my patches, apply and push to our repository.

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - Unaware that we've decide to move this out of 2.0.2 I spent some time on Friday and today and I believe fix this issue. Please allow this for 2.0.2. In case of positive decision I'd like this reassigned to Bin because he handles our fork of tcmalloc. So that he can grab my patches, apply and push to our repository.
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Assignee Aleksey Kondratenko [ alkondratenko ] Rahim Yaseen [ yaseen ]
          maria Maria McDuff (Inactive) made changes -
          Assignee Rahim Yaseen [ yaseen ] Mike Wiederhold [ mikew ]
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment -

          Assigned back to Maria in case assignment to Mike is some accident.

          In case you really wanted to assign to Mike, please explain why. I see no reason for this.

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - Assigned back to Maria in case assignment to Mike is some accident. In case you really wanted to assign to Mike, please explain why. I see no reason for this.
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Assignee Mike Wiederhold [ mikew ] Maria McDuff [ maria ]
          Hide
          mikew Mike Wiederhold added a comment -

          Alk,

          Maria and Yassen just want me to look at the changes you have and if all looks good I would assign this to bin to get the changes merged into the 2.0.2 code base. Please add me to review when you have a chance.

          Show
          mikew Mike Wiederhold added a comment - Alk, Maria and Yassen just want me to look at the changes you have and if all looks good I would assign this to bin to get the changes merged into the 2.0.2 code base. Please add me to review when you have a chance.
          Hide
          mikew Mike Wiederhold added a comment -

          I just reviewed Alk's changes. They require specific knowledge of visual studio and how code is compiled on windows. They look ok to me, but I lack context in that area so I'm not the best person to ask. Alk seems to have run all of the tests too so I think it makes sense to move forward with more extensive testing.

          Show
          mikew Mike Wiederhold added a comment - I just reviewed Alk's changes. They require specific knowledge of visual studio and how code is compiled on windows. They look ok to me, but I lack context in that area so I'm not the best person to ask. Alk seems to have run all of the tests too so I think it makes sense to move forward with more extensive testing.
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment -

          This stuff is merged upstream now btw

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - This stuff is merged upstream now btw
          Hide
          mikew Mike Wiederhold added a comment -

          Bin,

          Please merge the following 2 changes from 3/7 which are on alk's github.

          https://github.com/alk/gperftools/commits/wip-win-patching

          Show
          mikew Mike Wiederhold added a comment - Bin, Please merge the following 2 changes from 3/7 which are on alk's github. https://github.com/alk/gperftools/commits/wip-win-patching
          mikew Mike Wiederhold made changes -
          Assignee Maria McDuff [ maria ] Bin Cui [ bcui ]
          Hide
          alkondratenko Aleksey Kondratenko (Inactive) added a comment -

          No best place is to grab them from attachments here. Attachments are specifically rebased on top of our version of tcmalloc

          Show
          alkondratenko Aleksey Kondratenko (Inactive) added a comment - No best place is to grab them from attachments here. Attachments are specifically rebased on top of our version of tcmalloc
          Hide
          bcui Bin Cui added a comment -

          It is merged to couchbase/gperftools

          commit 44a584d1de8c89addfb4f1d0522bdbbbed83ba48
          Author: Aliaksey Kandratsenka <alkondratenko@gmail.com>
          Date: Tue May 7 17:22:42 2013 -0700

          issue-511: implemented rel8 jump patching

          I've found that Visual Studio 2012 release 32-bit C runtime library
          patching fails because array new has rel8 jmp which previous code
          could not handle.

          Implementation is largely copied from conditional jumps handling code.

          Apparently Windows Server 2012 (and presumably windows 8) now has this
          form of iat jump. Which is quite useless (rex.w in according to my
          understanding is not needed at all) but because of rex.w our code to
          recognize jumps like that didn't work.

          Fix is just skip this prefix.

          Show
          bcui Bin Cui added a comment - It is merged to couchbase/gperftools commit 44a584d1de8c89addfb4f1d0522bdbbbed83ba48 Author: Aliaksey Kandratsenka <alkondratenko@gmail.com> Date: Tue May 7 17:22:42 2013 -0700 issue-511: implemented rel8 jump patching I've found that Visual Studio 2012 release 32-bit C runtime library patching fails because array new has rel8 jmp which previous code could not handle. Implementation is largely copied from conditional jumps handling code. Apparently Windows Server 2012 (and presumably windows 8) now has this form of iat jump. Which is quite useless (rex.w in according to my understanding is not needed at all) but because of rex.w our code to recognize jumps like that didn't work. Fix is just skip this prefix.
          bcui Bin Cui made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          anil Anil Kumar made changes -
          Assignee Bin Cui [ bcui ] Maria McDuff [ maria ]
          Hide
          anil Anil Kumar added a comment -

          maria, can you assign this bug to QE who is going to test this.

          Show
          anil Anil Kumar added a comment - maria, can you assign this bug to QE who is going to test this.
          maria Maria McDuff (Inactive) made changes -
          Assignee Maria McDuff [ maria ] Thuan Nguyen [ thuan ]
          Hide
          maria Maria McDuff (Inactive) added a comment -

          Tony, pls verify / close in win8/2k12.

          Show
          maria Maria McDuff (Inactive) added a comment - Tony, pls verify / close in win8/2k12.
          Hide
          thuan Thuan Nguyen added a comment -

          Tested on build 2.0.2-811, memcached process runs ok after installation

          Show
          thuan Thuan Nguyen added a comment - Tested on build 2.0.2-811, memcached process runs ok after installation
          thuan Thuan Nguyen made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              thuan Thuan Nguyen
              Reporter:
              farshid Farshid Ghods (Inactive)
            • Votes:
              3 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes