Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. How would you solve that?

How would you solve that?

Scheduled Pinned Locked Moved The Lounge
comsysadminperformancequestion
50 Posts 29 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Joan M

    Hello all, in our department we are using a software that works as a software repository (a kind of subversion) that is the only one that exists/works for the software that we are using. It seems that the service that runs on our server (the one that handles all the queries from our computers) leaks memory. Even if I stop the service it doesn't frees all the memory that it has occupied. I've tried to speak to the manufacturer of that software without result... My only guess is to set up a virtual machine in order to serve that service and make it to reset each day. Any other idea? this is like killing a fly using a thermonuclear bomb... :~ As always thank you in advance.

    [www.tamelectromecanica.com][www.tam.cat]

    A Offline
    A Offline
    Abu Mami
    wrote on last edited by
    #27

    Since you can't seem to get them to fix the problem, why not start a blog or website called acmesoftwarerepositorysucks.org - and then blog it to death. Make sure the site is SEO. If that company isn't totally stupid, they'll realize that the publicity will hurt their reputation, and they just might "adjust" priorities.

    J 1 Reply Last reply
    0
    • S Shog9 0

      Joan Murt wrote:

      Any other idea?

      Pour snake oil directly into the machine. Repeat daily until the situation improves. Send snake oil invoices to software vendor.

      ----

      You're right. These facts that you've laid out totally contradict the wild ramblings that I pulled off the back of cornflakes packets.

      J Offline
      J Offline
      Joan M
      wrote on last edited by
      #28

      :-D

      [www.tamelectromecanica.com][www.tam.cat]

      1 Reply Last reply
      0
      • P Pharago

        Use a virtual machine, VMWare or something like that, install an OS inside and let the app run inside it without compromising the entire server, if the app crashes or eats all the VM asigned memory, well, you will still have the chance to reset the VM without bringing down the whole server, all other options will eat most of your free time and probably not going to fix your problem. Regards.

        J Offline
        J Offline
        Joan M
        wrote on last edited by
        #29

        That was just my idea...

        [www.tamelectromecanica.com][www.tam.cat]

        1 Reply Last reply
        0
        • A Abu Mami

          Since you can't seem to get them to fix the problem, why not start a blog or website called acmesoftwarerepositorysucks.org - and then blog it to death. Make sure the site is SEO. If that company isn't totally stupid, they'll realize that the publicity will hurt their reputation, and they just might "adjust" priorities.

          J Offline
          J Offline
          Joan M
          wrote on last edited by
          #30

          It will take longer than waiting for the next release... and I don't have time to make a blog, I have time only for work and for posting here in CP... :rolleyes:

          [www.tamelectromecanica.com][www.tam.cat]

          A 1 Reply Last reply
          0
          • P Paul Watson

            I am all about practical solutions, Joan. None of this new fangled untested virtual machine nonsense. Really, if I wanted a virtual machine I'd drink a few beers on the porch and imagine one!

            cheers, Paul M. Watson.

            J Offline
            J Offline
            Joan M
            wrote on last edited by
            #31

            :laugh:

            [www.tamelectromecanica.com][www.tam.cat]

            1 Reply Last reply
            0
            • J Joan M

              Hello all, in our department we are using a software that works as a software repository (a kind of subversion) that is the only one that exists/works for the software that we are using. It seems that the service that runs on our server (the one that handles all the queries from our computers) leaks memory. Even if I stop the service it doesn't frees all the memory that it has occupied. I've tried to speak to the manufacturer of that software without result... My only guess is to set up a virtual machine in order to serve that service and make it to reset each day. Any other idea? this is like killing a fly using a thermonuclear bomb... :~ As always thank you in advance.

              [www.tamelectromecanica.com][www.tam.cat]

              B Offline
              B Offline
              binarymax
              wrote on last edited by
              #32

              Joan Murt wrote:

              the only one that exists/works for the software that we are using

              I am confused on this part...how is it that your version control needs to be so specific? Most version control software is language/platform independent. In any case, I would recommend getting as much information about the leak as possible. Run some performance tests and isolate exactly when the leak occurs. Software companies who are usually too busy/lazy to fix bugs on older versions of software might be more apt to help you (and other customers who are having the same problem) if you can tell them exactly when and where the problem occurs. Setting up a VM and restarting it every night might be your only "solution" now, but this sounds like an awful way to go about things and it should be completely unacceptable to you and your management team...but you might be stuck :(

              1 Reply Last reply
              0
              • J Joan M

                It will take longer than waiting for the next release... and I don't have time to make a blog, I have time only for work and for posting here in CP... :rolleyes:

                [www.tamelectromecanica.com][www.tam.cat]

                A Offline
                A Offline
                Abu Mami
                wrote on last edited by
                #33

                Joan Murt wrote:

                It will take longer than waiting for the next release... and I don't have time to make a blog, I have time only for work and for posting here in CP...

                Good for you - I too don't have a blog, in fact, I refuse to start one. Got better things to do as well.

                1 Reply Last reply
                0
                • V Vasudevan Deepak Kumar

                  Zoltan Balazs wrote:

                  So they don't acknowledge it? Or there isn't support any more?

                  Many Indian software cos do that. They go behind you whacking its tongue like anything till you buy them and give the cheque. After that they think they are the rulers and we are slaves.

                  Vasudevan Deepak Kumar Personal Homepage
                  Tech Gossips
                  The woods are lovely, dark and deep, But I have promises to keep, And miles to go before I sleep, And miles to go before I sleep!

                  R Offline
                  R Offline
                  Russell Jones
                  wrote on last edited by
                  #34

                  Vasudevan Deepak Kumar wrote:

                  Many software cos do that.

                  Fixed that for you!

                  1 Reply Last reply
                  0
                  • J Johnno74

                    If the memory isn't recovered when the service is shut down, this is a bug in windows. When a process exits, ALL resources used by that process are freed. Anything else is a serious problem. I'd suggest the memory is going somewhere. Something else besides the service...

                    T Offline
                    T Offline
                    T Mac Oz
                    wrote on last edited by
                    #35

                    Johnno74 wrote:

                    this is a bug in windows.

                    There's a couple of ways a program can acquire global resources that will "leak" when a process terminates if they're not freed correctly, e.g.: Memory allocated with GlobalAlloc(), SysAllocString() (& variants) - These resources are valid across process boundaries and if they were automatically released when the allocating process terminated could leave any number of other processes in an indeterminate state. If a GlobalAlloc() handle didn't remain valid after process termination, the clipboard would only ever work while the source application remained active! Out-of process OLE object references (not sure if the default marshaller is supposed to track AddRef/Release counts & perform appropriate releases on process termination, from experience I can only say that I doubt it).

                    T-Mac-Oz "When I'm ruler of the universe ... I'm working on it, I'm working on it. I'm just as frustrated as you are. It turns out to be a non-trivial problem." - Linus Torvalds

                    J 1 Reply Last reply
                    0
                    • M Marc Clifton

                      Maybe use ProcessExplorer to see what threads it's creating. Maybe there's a thread that is leaking the memory, and yet another bug is that when you stop the service, the thread isn't being stopped. Of course, you're not getting paid to find their bugs! I'm curious, what kind of software works only with one kind of software repository? Marc

                      Thyme In The Country Interacx My Blog

                      T Offline
                      T Offline
                      T Mac Oz
                      wrote on last edited by
                      #36

                      Marc Clifton wrote:

                      when you stop the service, the thread isn't being stopped.

                      Eh? I may be missing something here but doesn't stopping the service require terminating the service's primary thread (actually a thread in the SCM that calls the service entry points)? & once a program's primary thread terminates, any remaining secondary threads are forcibly terminated? Or perhaps the service launches & communicates with a secondary process & it's the secondary process that's leaking memory?

                      T-Mac-Oz "When I'm ruler of the universe ... I'm working on it, I'm working on it. I'm just as frustrated as you are. It turns out to be a non-trivial problem." - Linus Torvalds

                      1 Reply Last reply
                      0
                      • T T Mac Oz

                        Johnno74 wrote:

                        this is a bug in windows.

                        There's a couple of ways a program can acquire global resources that will "leak" when a process terminates if they're not freed correctly, e.g.: Memory allocated with GlobalAlloc(), SysAllocString() (& variants) - These resources are valid across process boundaries and if they were automatically released when the allocating process terminated could leave any number of other processes in an indeterminate state. If a GlobalAlloc() handle didn't remain valid after process termination, the clipboard would only ever work while the source application remained active! Out-of process OLE object references (not sure if the default marshaller is supposed to track AddRef/Release counts & perform appropriate releases on process termination, from experience I can only say that I doubt it).

                        T-Mac-Oz "When I'm ruler of the universe ... I'm working on it, I'm working on it. I'm just as frustrated as you are. It turns out to be a non-trivial problem." - Linus Torvalds

                        J Offline
                        J Offline
                        Johnno74
                        wrote on last edited by
                        #37

                        Interesting info... Thanks

                        1 Reply Last reply
                        0
                        • G GuyThiebaut

                          How about installing something like a ram optimizer clickety - basically it tries to free memory once the available memory falls below a certain level which you configure. Guy

                          Continuous effort - not strength or intelligence - is the key to unlocking our potential.(Winston Churchill)
                          S Offline
                          S Offline
                          Steve Hansen
                          wrote on last edited by
                          #38

                          They are just BS, they just use up all your memory so that existing used memory is moved to your swap file.

                          1 Reply Last reply
                          0
                          • M Marc Clifton

                            Maybe use ProcessExplorer to see what threads it's creating. Maybe there's a thread that is leaking the memory, and yet another bug is that when you stop the service, the thread isn't being stopped. Of course, you're not getting paid to find their bugs! I'm curious, what kind of software works only with one kind of software repository? Marc

                            Thyme In The Country Interacx My Blog

                            C Offline
                            C Offline
                            cpkilekofp
                            wrote on last edited by
                            #39

                            Marc Clifton wrote:

                            Of course, you're not getting paid to find their bugs!

                            There was an interesting anecdote included in an article back in the '80s about an American who'd taken a position with a Japanese company. It seems his group had a problem with the control software for some component they used in manufacturing their product. By habit, they'd debugged the code and found the solution to the problem, then came to their new supervisor with the problem and solution. He reported telling them, "Next time, just report the problem, and we'll let the vendor solve it." I have questioned his logic ever since. This is based on my own experience that most software vendors (not all, by any means, and the percentage seemed to go down for a while) will resist any input that their product has a bug - unless, of course, if you could prove it AND you offered a solution for it. Comments, anyone?

                            1 Reply Last reply
                            0
                            • J Joan M

                              Hello all, in our department we are using a software that works as a software repository (a kind of subversion) that is the only one that exists/works for the software that we are using. It seems that the service that runs on our server (the one that handles all the queries from our computers) leaks memory. Even if I stop the service it doesn't frees all the memory that it has occupied. I've tried to speak to the manufacturer of that software without result... My only guess is to set up a virtual machine in order to serve that service and make it to reset each day. Any other idea? this is like killing a fly using a thermonuclear bomb... :~ As always thank you in advance.

                              [www.tamelectromecanica.com][www.tam.cat]

                              M Offline
                              M Offline
                              magicfoot
                              wrote on last edited by
                              #40

                              The Virtual server sounds good but just for argument's sake you could try to write a program that will allocate and then deallocate every single bit of available memory once the service has been stopped. Then restart the service. I would not put my hand in the fire for this method but it may be worth a try - any other non-reboot ideas ?

                              D 1 Reply Last reply
                              0
                              • J Joan M

                                Hello all, in our department we are using a software that works as a software repository (a kind of subversion) that is the only one that exists/works for the software that we are using. It seems that the service that runs on our server (the one that handles all the queries from our computers) leaks memory. Even if I stop the service it doesn't frees all the memory that it has occupied. I've tried to speak to the manufacturer of that software without result... My only guess is to set up a virtual machine in order to serve that service and make it to reset each day. Any other idea? this is like killing a fly using a thermonuclear bomb... :~ As always thank you in advance.

                                [www.tamelectromecanica.com][www.tam.cat]

                                P Offline
                                P Offline
                                patbob
                                wrote on last edited by
                                #41

                                Yes, VM or hardware is the only way to solve a leak that even the OS can't reclaim upon process termination. Of cousre, it also means the OS has a bug, so I'd opt for a hardware solution, or at least a VM made by a different vendor. However.. why are you still using this product, anyway? If the product is really all that bad, and they are not planning to have a fix out for a year (don't forget, plans are always optimistic), aren't you staying with a product whose customer base is defecting? Is that really the horse you want to hitch your company's source code to? I've seen companies fold over such fiascos and wouldn't want to risk my company's source code to a company about to fold with such a serious flaw already in their software. Maybe that's just me though.

                                patbob

                                J 1 Reply Last reply
                                0
                                • T Todd Smith

                                  Go into the services manager and double-click on the services involved. Look at the top of the dialog for Service name:. Now create a batch file with the following:

                                  sc stop *service name goes here*
                                  sleep 30 ; give it some time to shut down
                                  sc start *service name goes here*

                                  Now go into control panel and Scheduled Taks > Add Scheduled Task We had to do this for a 3rd party app which kept dropping its database connection (probably during nightly backups) and wouldn't automatcially restore the connection. The only way to fix it was a restart. So we setup a scheduled task to start and stop the services during the night so all would be good in the morning when the service would acutally get used.

                                  Todd Smith

                                  T Offline
                                  T Offline
                                  Theodore M Seeber
                                  wrote on last edited by
                                  #42

                                  Likely wouldn't work in this situation- he's reporting that the service isn't deallocating memory on shutdown.

                                  1 Reply Last reply
                                  0
                                  • M magicfoot

                                    The Virtual server sounds good but just for argument's sake you could try to write a program that will allocate and then deallocate every single bit of available memory once the service has been stopped. Then restart the service. I would not put my hand in the fire for this method but it may be worth a try - any other non-reboot ideas ?

                                    D Offline
                                    D Offline
                                    Dan Neely
                                    wrote on last edited by
                                    #43

                                    bob2411 wrote:

                                    for argument's sake you could try to write a program that will allocate and then deallocate every single bit of available memory once the service has been stopped. Then restart the service.

                                    That's the "memory optimizer" X| snakeoil antipattern. All you accomplish is to flush all your system ram into the swapfile thus slowing all your applications down while the swap back in. You end up with 0 bytes more usable ram at the end.

                                    Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                                    1 Reply Last reply
                                    0
                                    • P patbob

                                      Yes, VM or hardware is the only way to solve a leak that even the OS can't reclaim upon process termination. Of cousre, it also means the OS has a bug, so I'd opt for a hardware solution, or at least a VM made by a different vendor. However.. why are you still using this product, anyway? If the product is really all that bad, and they are not planning to have a fix out for a year (don't forget, plans are always optimistic), aren't you staying with a product whose customer base is defecting? Is that really the horse you want to hitch your company's source code to? I've seen companies fold over such fiascos and wouldn't want to risk my company's source code to a company about to fold with such a serious flaw already in their software. Maybe that's just me though.

                                      patbob

                                      J Offline
                                      J Offline
                                      Joan M
                                      wrote on last edited by
                                      #44

                                      patbob wrote:

                                      However.. why are you still using this product, anyway?

                                      It is more complicated... the software is created on the company A. That company develops the repository system also. The company B makes great improvements/extensions to the software made in the company A (they are resellers/partners) => those extensions are great for me. The company A has developed the 3rd version of the software. The company B needs more time to port all their extensions to the software. This is why I'm stuck with that... Anyway the software that I'm using is amazing and it allows me to do exactly what I need in my business (www.tamelectromecanica.com[^]). There are only a few companies in the world that make this kind of software and I think that I'm with the best one, at least this is what I believe... Thank you for your feedback anyway.

                                      [www.tamelectromecanica.com][www.tam.cat]

                                      P 1 Reply Last reply
                                      0
                                      • J Joan M

                                        Hello all, in our department we are using a software that works as a software repository (a kind of subversion) that is the only one that exists/works for the software that we are using. It seems that the service that runs on our server (the one that handles all the queries from our computers) leaks memory. Even if I stop the service it doesn't frees all the memory that it has occupied. I've tried to speak to the manufacturer of that software without result... My only guess is to set up a virtual machine in order to serve that service and make it to reset each day. Any other idea? this is like killing a fly using a thermonuclear bomb... :~ As always thank you in advance.

                                        [www.tamelectromecanica.com][www.tam.cat]

                                        C Offline
                                        C Offline
                                        cpkilekofp
                                        wrote on last edited by
                                        #45

                                        Joan Murt wrote:

                                        Any other idea? this is like killing a fly using a thermonuclear bomb...

                                        It's not a thermonuclear bomb, it's a honeypot, and as such is perfect for flies and other bugs.

                                        1 Reply Last reply
                                        0
                                        • J Joan M

                                          Hello all, in our department we are using a software that works as a software repository (a kind of subversion) that is the only one that exists/works for the software that we are using. It seems that the service that runs on our server (the one that handles all the queries from our computers) leaks memory. Even if I stop the service it doesn't frees all the memory that it has occupied. I've tried to speak to the manufacturer of that software without result... My only guess is to set up a virtual machine in order to serve that service and make it to reset each day. Any other idea? this is like killing a fly using a thermonuclear bomb... :~ As always thank you in advance.

                                          [www.tamelectromecanica.com][www.tam.cat]

                                          A Offline
                                          A Offline
                                          Arterion
                                          wrote on last edited by
                                          #46

                                          I vote the VM idea is the best. I wouldn't call it a significant issue, especially not equating it to a thermonuclear bomb. VM's are becoming so common that I think they'll eventually be considered "trivial". I run all sorts of things in VM's, server and workstation, and I love the technology. It's even to the point now that I won't run anything natively on a machine until I've first tested it in a virtual environment. Whether you have a dedicated, physical machine, or you're using a virtual one, you could setup a scheduled task of "shutdown -r" or what have you to make it restart at a convenient interval.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups