Loading ...
Sorry, an error occurred while loading the content.

Namespace pollution / 2

Expand Messages
  • Fagyal Csongor
    ... Hi List, I have a rather huge ASP application (a portal engine). Recently, I have seen some of the pages slowing down very much. I have tracked down the
    Message 1 of 2 , Oct 26, 2004
    • 0 Attachment
      Oooops, sorry, I hit "Send" accidentally before... here it is again:

      --------------------------------------

      Hi List,

      I have a rather huge ASP application (a portal engine). Recently, I have
      seen some of the pages slowing down very much.

      I have tracked down the problem to the following lines:

      my $dump = Devel::Symdump->rnew;
      my @classes = $dump->packages; # All loaded packages
      my %list;

      foreach my $class (@classes) {
      if (isa($class, 'COPE::Block::Base')) {
      $list{$class} = $class if ($class->isPage);
      }
      }

      The problem is the @classes array contains thousands of packages. I put in some debugging and this is what is "polluting" here:

      "/tmp/statedir/0d/0d2cbb902af8ec938b3aa2792f4c140247$MlDbM{::state_serializer:: =>
      ::Storable::,::timeout:: => 1091436272,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: =>
      1}077a41ec52c0c62684160$MlDbM{::state_serializer:: => ::Storable::,::timeout:: => 1091436611,::state_db:: =>
      ::MLDBM::Sync::SDBM_File::,::end:: => 1}0b1ca8b479356e1316640$MlDbM{::state_serializer:: => ::Storable::,::timeout:: =>
      1091436957,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: => 1}0d74a01a978cc1cfac3b9$MlDbM{::state_serializer:: =>
      ::Storable::,::timeout:: => 1091436957,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: =>
      1}0fc007d93ba66552ef884$MlDbM{::state_serializer:: => ::Storable::,::timeout:: => 1091436957,::state_db:: =>
      ::MLDBM::Sync::SDBM_File::,::end:: => 1}0ff41fbdcbc163b120b94$MlDbM{::state_serializer:: => ::Storable::,::timeout::
      => 1091436957,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: => 1}0af401ff9ca13f674f013$MlDbM{::state_serializer::
      => ::Storable::,::timeout:: => 1091436957,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: =>
      1}0a40ea3d75229cb78cd8f$MlDbM{::state_serializer:: => ::Storable::,::timeout:: => 1091436958,::state_db:: =>
      ::MLDBM::Sync::SDBM_File::,::end:: => 1}0ba25ca833b6befc4f2f9$MlDbM{::state_serializer:: => ::Storable::,::timeout:: =>
      1091436959,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: => 1}08f1621baf0c9a5370380$MlDbM{::state_serializer:: =>
      ::Storable::,::timeout:: => 1091436959,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: =>
      1}019fc4acbcd26c09f6896$MlDbM{::state_serializer:: => ::Storable::,::timeout:: => 1091436959,::state_db:: =>
      ::MLDBM::Sync::SDBM_File::,::end:: => 1}0114a69adbef0c81cd858$MlDbM{::state_serializer:: => ::Storable::,::timeout::
      => 1091436959,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: => 1}0714e0cffd8c9fc29242c$MlDbM{::state_serializer::
      => ::Storable::,::timeout:: => 1091437484,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: =>
      1}02f0679ee198d0f15dae8$MlDbM{::state_serializer:: => ::Storable::,::timeout:: => 1091437484,::state_db:: =>

      ... and so on ...

      ::Storable::,::timeout:: => 1095641053,::state_db:: => ::MLDBM::Sync::SDBM_File::,::end:: =>
      1}0dd1a82a2f9647618c0e0$MlDbM{::timeout:: => 1095686433,::state_serializer:: => "


      I have hundreds of packages(?) like this, all starting with
      "/tmp/statedir/0d/0d2cbb902af8ec938b3aa2792f4c140247$MlDbM{ ..."


      The question is: how are these artifacts generated? What is more likely: it is an MLDBM::Sync/Apache::ASP/mod_perl/etc. bug, of something is
      doing this in my application?

      Thank you,
      - Csongor


      ---------------------------------------------------------------------
      To unsubscribe, e-mail: asp-unsubscribe@...
      For additional commands, e-mail: asp-help@...
    • Josh Chamas
      ... I have never heard of this before! It seems to me that this might be somehow related to Apache::ASP::Session doing a TIEHASH. If no other work around
      Message 2 of 2 , Oct 29, 2004
      • 0 Attachment
        Fagyal Csongor wrote:
        >
        > Oooops, sorry, I hit "Send" accidentally before... here it is again:
        >
        > --------------------------------------
        >
        > Hi List,
        >
        > I have a rather huge ASP application (a portal engine). Recently, I have
        > seen some of the pages slowing down very much.
        >
        > I have tracked down the problem to the following lines:
        >
        > my $dump = Devel::Symdump->rnew;
        > my @classes = $dump->packages; # All loaded packages
        > my %list;
        >
        > foreach my $class (@classes) {
        > if (isa($class, 'COPE::Block::Base')) {
        > $list{$class} = $class if ($class->isPage);
        > }
        > }
        >

        I have never heard of this before!

        It seems to me that this might be somehow related to Apache::ASP::Session
        doing a TIEHASH. If no other work around presents itself, you might
        change your method of going through the packages, perhaps not
        using Devel::Symdump, or even if you do, then to not do an isa()
        all on each, but instead match each $class directly with an regexp first
        for processing speed.

        I wonder what could have caused this slow down recently? Did you
        do any code change or perl upgrade or Apache::ASP upgrade that you
        could peg this to?

        Regards,

        Josh

        ---------------------------------------------------------------------
        To unsubscribe, e-mail: asp-unsubscribe@...
        For additional commands, e-mail: asp-help@...
      Your message has been successfully submitted and would be delivered to recipients shortly.