Revision 459

Date:
2014/12/03 17:02:12
Author:
ahitrov
Revision Log:
Cache::Memcached to Cache::Memcached::Fast upgrade

Files:

Legend:

 
Added
 
Removed
 
Modified
  • koi8/core/config.mk

     
    24 24 CORE_REQUIRED += IO-stringy
    25 25 CORE_REQUIRED += DateTime-Format-Pg
    26 26 CORE_REQUIRED += DateTime-Locale-ru_RU_KOI8_R
    27 CORE_REQUIRED += Cache-Memcached
    27 CORE_REQUIRED += Cache-Memcached-Fast
    28 28 CORE_REQUIRED += cronolog
    29 29 CORE_REQUIRED += clogger
    30 30 CORE_REQUIRED += HTML-Parser
  • koi8/core/lib/Contenido/Cache/MemcachedBackend.pm

     
    3 3 use strict;
    4 4 use warnings 'all';
    5 5
    6 use Cache::Memcached;
    6 use Cache::Memcached::Fast;
    7 7
    8 8
    9 9 #########################################
     
    17 17 my $implementation = $opts->{mc_backend};
    18 18 $memd ||= $implementation->new({
    19 19 servers => $$opts{mc_servers},
    20 debug => $$opts{mc_debug},
    21 20 namespace => $$opts{mc_namespace},
    22 21 });
    23 22 bless {memd=>$memd}, $class;
  • koi8/core/ports/all/Cache-Memcached-Fast/GNUmakefile

     
    1 1 include ../../etc/perl.mk
    2 2
    3 PORTVERSION = 0.10
    3 PORTVERSION = 0.23
    4 4 PERL_MAKEMAKER = yes
    5 5 MASTER_CPAN_SUBDIR = Cache
    6 6
    7 PORT_DEPENDS = Compress-Zlib
    8
    9 CONFIGURE_PRECMD = ${MAKE_RECURSIVE} pre-configure
    10 pre-configure:
    11 cd ${WRKSRC} && patch -p0 < ${PORTDIR}/patch-newline
    12
    13 7 include ../../etc/ports.mk
  • koi8/core/project-default.mk

     
    34 34
    35 35 # additional ports if any
    36 36 PROJECT_REQUIRED ?=
    37 SERIALIZE_WITH ?=
    37 38
    38 39 # defaults
    39 40 PRELOADS ?=
    40 41 PERSISTENT_CONN ?= YES
    41 42 PGSQL_REAL_PREPARE ?= YES
    42 43
    43 MEMCACHED_BACKEND ?= Cache::Memcached
    44 MEMCACHED_BACKEND ?= Cache::Memcached::Fast
    44 45 MEMCACHED_ENABLE ?= NO
    45 46 MEMCACHED_SELECT_TIMEOUT ?= 0.5
    46 47 MEMCACHED_SERVERS ?=
  • utf8/core/comps/contenido/sections.html

     
    92 92 % ## и описанной для класса функции search_fields
    93 93 % ########################################################
    94 94 % if ( $filter{class} || $filter{table} ) {
    95 % my ($document) = $filter{class} ? ($filter{class}->new( $keeper )) : grep { $_->new( $keeper )->class_table eq $owner->default_table_class } @{ $user->get_available_classes };
    95 % my ($document) = $filter{class} ? ($filter{class}->new( $keeper )) : map { $_->new( $keeper ) } grep { $_->new( $keeper )->class_table eq $owner->default_table_class } @{ $user->get_available_classes };
    96 96 % my @fields = $document->search_fields;
    97 97 % if ( @fields ) {
    98 98 % my @props = $document->required_properties;
  • utf8/core/config.mk

     
    23 23 CORE_REQUIRED += PerlMagick
    24 24 CORE_REQUIRED += IO-stringy
    25 25 CORE_REQUIRED += DateTime-Format-Pg
    26 CORE_REQUIRED += Cache-Memcached
    26 CORE_REQUIRED += Cache-Memcached-Fast
    27 27 CORE_REQUIRED += Data-Recursive-Encode
    28 28 CORE_REQUIRED += JSON-XS
    29 29 CORE_REQUIRED += cronolog
  • utf8/core/lib/Contenido/Cache/MemcachedBackend.pm

     
    3 3 use strict;
    4 4 use warnings 'all';
    5 5
    6 use Cache::Memcached;
    6 use Cache::Memcached::Fast;
    7 7
    8 8
    9 9 #########################################
     
    17 17 my $implementation = $opts->{mc_backend};
    18 18 $memd ||= $implementation->new({
    19 19 servers => $$opts{mc_servers},
    20 debug => $$opts{mc_debug},
    21 20 namespace => $$opts{mc_namespace},
    22 21 });
    23 22 bless {memd=>$memd}, $class;
  • utf8/core/lib/Contenido/Keeper.pm

     
    860 860
    861 861 return undef unless $self->{state}->{memcached_enable};
    862 862
    863 unless ($self->{MEMD} && ref($self->{MEMD}) && $self->{MEMD}->{servers}) {
    863 unless ( $self->{MEMD} && ref $self->{MEMD} && ref $self->{MEMD}->server_versions eq 'HASH' && keys %{$self->{MEMD}->server_versions} ) {
    864 864 my $implementation = $self->state()->memcached_backend();
    865 865 $self->{MEMD} = $implementation->new({
    866 866 servers => $self->state()->memcached_servers(),
    867 debug => $DEBUG,
    868 867 compress_threshold => 10_000,
    869 868 namespace => $self->state()->memcached_namespace,
    870 869 enable_compress => $self->state()->memcached_enable_compress(),
    871 870 connect_timeout => 0.1,
    872 select_timeout => $self->state()->memcached_select_timeout(),
    871 io_timeout => $self->state()->memcached_select_timeout(),
    873 872 check_args => 'skip'
    874 873 });
    874 $self->{MEMD}->enable_compress( $self->state()->memcached_enable_compress() );
    875 875 }
    876 876 return $self->{MEMD};
    877 877 }
  • utf8/core/ports/all/Cache-Memcached-Fast/GNUmakefile

     
    1 1 include ../../etc/perl.mk
    2 2
    3 PORTVERSION = 0.10
    3 PORTVERSION = 0.23
    4 4 PERL_MAKEMAKER = yes
    5 5 MASTER_CPAN_SUBDIR = Cache
    6 6
    7 PORT_DEPENDS = Compress-Zlib
    8
    9 CONFIGURE_PRECMD = ${MAKE_RECURSIVE} pre-configure
    10 pre-configure:
    11 cd ${WRKSRC} && patch -p0 < ${PORTDIR}/patch-newline
    12
    13 7 include ../../etc/ports.mk
  • utf8/core/project-default.mk

     
    41 41 PERSISTENT_CONN ?= YES
    42 42 PGSQL_REAL_PREPARE ?= YES
    43 43
    44 MEMCACHED_BACKEND ?= Cache::Memcached
    44 MEMCACHED_BACKEND ?= Cache::Memcached::Fast
    45 45 MEMCACHED_ENABLE ?= NO
    46 46 MEMCACHED_SELECT_TIMEOUT ?= 0.5
    47 47 MEMCACHED_SERVERS ?=

Небольшая справка по веткам

cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.

koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.

utf8 – актуальная ветка, заточенная под UTF-8.

Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.