Permalink
Commits on Nov 16, 2018
  1. Simplify apc_cache_update implementation

    nikic committed Nov 16, 2018
  2. Remove unused variable

    nikic committed Nov 16, 2018
Commits on Oct 21, 2018
  1. Return null from apcu_key_info() on failure

    nikic committed Oct 21, 2018
    This restores the previous behavior.
  2. Use interned strings in a few more places

    nikic committed Oct 21, 2018
    In cases where we already have the interned string for other reasons
    make use of it, but don't create new ones. The top-level cache_info
    result is only emitted once, so not particularly important.
  3. Use interned strings in cache info (partially)

    nikic committed Oct 21, 2018
    Only for the elements themselves.
  4. Make behavior with disabled apcu more uniform

    nikic committed Oct 21, 2018
    In particular, remove explicit checks for apcu being enabled and
    still call caching functions. This makes sure that the behavior is
    consistent for functions which accept an array of keys. Previously
    this would just return false, now it behaves the same as if the
    cache were empty.
  5. Remove the cache busy flag

    nikic committed Oct 21, 2018
    This is no longer used. We always acquire a full write lock for
    cleanup operations.
  6. Remove out of date CHANGELOG file

    nikic committed Oct 9, 2018
    The changelog is part of package.xml / PECL nowadays.
Commits on Oct 9, 2018
  1. Remove outdated TODO file

    nikic committed Oct 9, 2018
  2. Fixed bug #72980

    nikic committed Oct 9, 2018
    Consistently handle empty strings as cache keys. They were allowed
    in some places and forbidden in others. We now consistently allow
    them.
  3. Remove apc.writable ini setting

    nikic committed Oct 9, 2018
    This setting is no longer in use.
  4. Improve error message if cache structure allocation fails

    nikic committed Oct 9, 2018
    Also remove duplicate zeroing of hash slots.
  5. Improve message for failed mmap

    nikic committed Oct 9, 2018
    Also remove trailing ":" characters from error messages.
  6. Use E_CORE_ERROR for startup errors

    nikic committed Oct 9, 2018
    Just E_ERROR will not cause an immediate abort during startup.
    This would lead to segfaults if we failed to initialize the SMA
    structures, e.g. due to mmap failure.
  7. Remove useless check of pemalloc return value

    nikic committed Oct 9, 2018
  8. Clean up SMA API

    nikic committed Oct 9, 2018
    Directly call SMA functions and pass them the SMA context, instead
    of the weird indirection that was used before.
  9. Remove apc_emalloc and friends

    nikic committed Oct 9, 2018
    Instead use pemalloc(, 1) etc, which are the PHP provided
    infallible system allocator functions. The naming apc_emalloc was
    rather confusing, as it usually implies per-request allocation.
Commits on Oct 8, 2018
  1. Also inline fast-path of apc_persist_copy_zval

    nikic committed Oct 8, 2018
  2. Optimize array unpersist

    nikic committed Oct 8, 2018
  3. Unpersist in-place

    nikic committed Oct 8, 2018
    This make apc_unpersist consistent with apc_persist_copy.
  4. Merge pull request #305 from nikic/precise-persist

    nikic committed Oct 8, 2018
    Implement precisely-allocated persistence
  5. Fix unpersist refcounting

    nikic committed Oct 8, 2018
  6. Always initialize dst, just to be sure

    nikic committed Oct 8, 2018
  7. Use default serializer by default again

    nikic committed Oct 8, 2018
  8. Use ZSTR_H when comparing keys

    nikic committed Oct 8, 2018
    We are guaranteed that all keys in SHM have a precomputed hash.
  9. Reimplement unpersist logic

    nikic committed Oct 8, 2018
  10. Mark serialized values using IS_PTR

    nikic committed Oct 8, 2018