AllegroCache Download Page

This download site is designed to provide Allegro CL 8.0 and 7.0 AllegroCache users the opportunity to access new releases of AllegroCache. We intend to provide new features and updates frequently so be sure to check this site on a regular basis.

Allegro CL 8.0 was released with AllegroCache version 1.0.0. Please review the "Change Log" section below regarding incompatibilities prior to installation.

NOTE: if you need an update for a platform not listed below please contact support@franz.com for assistance.

Installation Instructions

The installation is actually quite simple and just takes a few minutes.

Steps 1 and 2 only have to be done one time. After the first time, when you want to install new versions of AllegroCache, you can skip directly to step 3.

  1. [Skip this step if you already have Allegro CL installed.]
    Install Allegro Common Lisp, if you do not already have it installed. You can download Allegro CL here.
  2. Make sure you have all the latest patches to Allegro CL installed.
    It is very important that you not skip this step, until you have completed it one time.
  3. Install AllegroCache by starting up Allegro and evaluating the forms below, depending on whether you need to use a proxy for web access.

    No proxy needed for web access:
    (require :update)
    (system.update:install-allegrocache)
    
    Proxy needed for web access:
    Substitute your actual proxy host name, proxy port (a number), username and password for the bold italic items below:

    If you do not require a username and password, then use these forms:
    (require :update)
    (system.update:install-allegrocache :proxy "myproxy:myport")
    
    If you require a username and password, then use these forms:
    (require :update)
    (system.update:install-allegrocache
      :proxy "myproxy:myport"
      :proxy-basic-authorization '("myaccount" . "mypassword"))
    
  4. Test the installation by evaluating the form printed by system.update:install-allegrocache. If you see something like the following (though the version number in the loaded fasl file might be different), then the installation worked:
    cl-user(11): (require :acache "acache-1.1.11.fasl")
    ; Fast loading C:\Program Files\acl80\code\acache-1.1.11.fasl
    ...
    t
    cl-user(12): 
    
    The important part is the lack of the word Error appearing anywhere in the output.

The documentation for AllegroCache is here.

Manual Installation

The following files are for manual installation only. Manual installation should only be used when you want to install an older version of AllegroCache, or the automatic installation above does not work for you (in which case, we would definitely like to know about it, so please send the details to support@franz.com.

  1. Please follow steps 1 and 2 in "Installation Instructions" above. This will insure that an up-to-date Allegro CL is installed.
  2. Download AllegroCache, choosing the file appropriate to your version of installed Allegro CL.
  3. Unpack the downloaded file somewhere. For the purposes discussion, we will assume that you unpacked the Windows version in c:\temp. This means you will have a new directory c:\temp\acache-1.1.10-acl8.0. You can move this directory to the Allegro directory, c:\Program Files\acl80, or some other place of your choosing. Now, you can load AllegroCache like this:
    (load "c:/program files/acl80/acache-1.1.10-acl8.0/acache.fasl")
    

Operating systemACL versionFile
Windows 9.0 acache-2.2.2-acl9.0-windows32.zip
Windows 8.2 acache-2.2.2-acl8.2-windows32.zip
Windows 9.0/SMP acache-2.2.2-acl9.0-windows32smp.tgz
64-bit Windows 9.0 acache-2.2.2-acl9.0-windows64.zip
64-bit Windows 8.2 acache-2.2.2-acl8.2-windows64.zip
64-bit Windows 9.0/SMP acache-2.2.2-acl9.0-windows64smp.tgz
Mac OS X (Intel) 9.0 acache-2.2.2-acl9.0-mactel32.tgz
Mac OS X (Intel) 8.2 acache-2.2.2-acl8.2-mactel32.tgz
64-bit Mac OS X (Intel) 9.0 acache-2.2.2-acl9.0-mactel64.tgz
64-bit Mac OS X (Intel) 8.2 acache-2.2.2-acl8.2-mactel64.tgz
64-bit Mac OS X (Intel) 9.0/SMP acache-2.2.2-acl9.0-mactel64smp.tgz
Mac OS X 8.1 acache-2.1.17-acl8.1-macosx32.tgz
64-bit Mac OS X 8.1 acache-2.1.17-acl8.1-macosx64.tgz
64-bit Linux (x86-64) 9.0 acache-2.2.2-acl9.0-linux64.tgz
64-bit Linux (x86-64) 8.2 acache-2.2.2-acl8.2-linux64.tgz
64-bit Linux (x86-64) 9.0/SMP acache-2.2.2-acl9.0-linux64smp.tgz
Linux (x86) 9.0 acache-2.2.2-acl9.0-linux32.tgz
Linux (x86) 8.2 acache-2.2.2-acl8.2-linux32.tgz
Linux (x86) 9.0/SMP acache-2.2.2-acl9.0-linux32smp.tgz
Solaris 9.0 acache-2.2.2-acl9.0-solaris32.tgz
Solaris 8.2 acache-2.2.2-acl8.2-solaris32.tgz
64-bit Solaris 9.0 acache-2.2.2-acl9.0-solaris64.tgz
64-bit Solaris 8.2 acache-2.2.2-acl8.2-solaris64.tgz
64-bit Solaris (x86-64) 9.0 acache-2.2.2-acl9.0-solarisamd64.tgz
64-bit Solaris (x86-64) 8.2 acache-2.2.2-acl8.2-solarisamd64.tgz
FreeBSD 9.0 acache-2.2.2-acl9.0-freebsd32.tgz
FreeBSD 8.2 acache-2.2.2-acl8.2-freebsd32.tgz
freebsd.64 9.0/SMP acache-2.2.2-acl9.0-freebsd64smp.tgz
AIX 8.2 acache-2.2.2-acl8.2-aix32.tgz
64-bit AIX 8.2 acache-2.2.2-acl8.2-aix64.tgz
HP-UX 11.00 8.1 acache-2.1.17-acl8.1-hpux32.tgz
64-bit HP-UX 11.00 8.1 acache-2.1.17-acl8.1-hpux64.tgz

Change Log

2.2.2
  • Improvements for SMP safety.
2.2.1
  • The maximum message size was increased from 20,000,000 bytes to 40,000,000.
2.2.0
  • A preread argument was added to create-index-cursor to greatly speed up an scan of a index that will touch most pages in the btree.
  • A max-fds argument was added to start-server so you can ensure that AllegroCache doesn't run out of file descriptors if you have many indexes and/or maps.
  • Note that the client/server protocol has advanced to '5' meaning that client code will need to talk to a server using this latest code. However old clients will be continue to work with this new server.
2.1.23
  • Now you can now quickly scan an index an find all of the unique values. The documention for create-index-cursor shows an example of how this can be done.
2.1.22
  • Rollback will now undo the changes made to instances due to a changed class, so that the instance is reverted to the previous state and marked as from a previous version of the class. Then when the instance is next referenced the update process will be done again.
  • The database format is unchanged.
2.1.21
  • Change the logmaster structure and logic to take into account the presence of the :read-only flag for open-file-database. Now, logmaster opens log files with :direction :input in read-only databases.
  • create-expression-cursor has been documented to return nil if there are no values to return. However there was a problem where an error was signalled inside the server instead. This problem has been corrected.
  • Improve the performance of client/server operations by retrieving the approprite instance vector in one round trip rather than two.
  • If the database is opened read-only then ensure that the index btrees are also opened read-only as well. Previously we would avoid writing to the indexes in read-only mode but we did open the files in read/write mode.
2.1.17
  • Prevent a "No applicable methods" error inside get-new-class-cursor when creating by checking whether the dash-class-backend-class for that given class exists. This would happen when creating class cursors for classes that had only uncommitted instances.
  • Previously, AllegroCache signaled a non-simple error when connection to the AllegroCache server broke down during a request. Now, AllegroCache will signal a network-communication-error condition.
  • AllegroCache now correctly loads and preserves :type information on slots of persistent classes. If the type is no longer a type specifier (e.g. loading a database in another image that doesn't have this type defined), AllegroCache will reset the slot type to T.
  • AllegroCache no longer discards :documentation on persistent classes and their direct slots.
  • The print-object method used to write "not modified" for maps that had new values added or old ones removed. Use the map-modified slot to check for modifiedness of ac-maps now.
  • Previously, (rollback) would only roll back changes to instance of ac-map itself, not any user-defined subclass. This change ensures that any subclasses of ac-map get treated like ac-map itself does, like a user would expect.
  • Allow specifying an :address argument to start-server which specifies the listening address to bind to. It can be either an internet address as a string, or a pathname object (to specify a unix domain socket).
  • Allow open-network-database to connect to a unix domain socket, as well: specify a pathanme object as the hostname, and nil as the port.
  • When opening a DB read-only, don't set up a write-buffer structure: Otherwise, when closing the DB, AC will attempt to flush the buffer, which used to lead to an error message.
2.1.13 Fix problem with :use :memory when there are no class definitions loaded in memory yet.
2.1.12 Handle OIDs larger than 29 bits.
2.1.11 You can specify the maxinum number of file descriptors used to access index btrees. Fix a bug in doclass* where all subclasses were not scanned.
2.1.10 A database can be opened in read-only mode. Btrees can be opened in read-only mode.
2.1.9 A call to return now works inside a doclass*. In the btree module the replace hook again is enabled. Distributions are now being built for 64-bit ACL on Mac OS X Leopard.
2.1.8 Now one can retrieve index values directly from the index with next-index-cursor and previous-index-cursor. For client/server users: you must update both the client and server in order to use this new feature.
2.1.7 Fix bug in adding indexed objects across an authenticated connection.
2.1.6 Fix bulk load bug where building the a fixnum index would cause Lisp to signal a segementation violation.
2.1.5
  • permit ac-set to be subclassed
  • More support for running without *allegrocache* being bound.
2.1.4
  • slot reading and writing can be done without binding *allegrocache*
  • Add the function database-of that returns the database connection associated with a persistent object.
2.1.3
  • bulk loading now works in client/server mode. To use this new feature you must update both the client and server.
  • expression cursors - speed up the non-indexed case and fix a bug in freeing an index.
  • fix a bug in deleting a modified map.
2.1.2
  • Improve the speed of expression cursor indexes.
  • reduce the consing on index lookups
  • fix a bug index access.
  • recover-from-log is now able to skip past bad entries at the end.
2.1.1
  • Speed up fixnum index bulk loading for version 9 databases. This slows down bulk loading for fixnum bulk indexes of version 8 databases so be sure to upgrade old databases to version 9.
  • Speed up recover-from-log for large databases with many indexes.
  • Greatly reduce consing when doing index lookups
  • Fix bug when redefining a class to eliminate an indexed slot
2.1.0
  • Add expression cursors which can iterate over a set of instances that satisfy a predicate over multiple slots of an instance.
  • Fix a bug in the storing of non-fixnum indexes in bulk loading mode.
  • Database version is now 9, but this AllegroCache version will operate on either version 8 or version 9 databases. See the section "upgrading databases" in the AllegroCache reference manual.
2.0.1
  • Have client and server exchange information on the wire protocols they support and signal an error if they are incompatible. It's best to run the same version of AllegroCache in the client and server but when that's not convenient this test will catch situations when the client of one version should not communicate with the server of another version.
  • Add class cursor functions: create-class-cursor, next-class-cursor, and free-class-cursor
  • Should an error occur when writing the transaction log that write will be retried up to 10 times.
2.0.0
  • Add a bulk loading mode to allow objects to be added to the database quickly.
  • The client-connections function always returns the current connection first (that is the connection used in the evaluation of the call to client-connections).
  • Fix bug in maps when transactions couldn't commit and were forced to rollback.
  • doclass will signal an error if the given class-name doesn't name a class.
1.2.7
  • client/server improvement: Speed up doclass and doclass*. Fix bug where rollback wouldn't always update subclasses when superclass was changed by another client.
  • defclass* fix: constructor name now built correctly in ANSI mode.
All code using doclass or doclass* must be recompiled
1.2.6 Add two new functions for maps: map-count and retrieve-from-map-range. Also add extra keyword arguments to next-map-cursor and previous-map-cursor.
1.2.5
  • Fix bug where strings longer than 127 characters wouldn't be found by retrieve-from-index
  • Greatly reduce the time to determine that a cached object is up to date after a commit
  • speed up commits when there are many map objects in the database.
  • fix bug where adding an index to a class wasn't propagated to subclasses.
1.2.4 Add a new type of map ac-map-range which stores its keys in the same sorted order as values in an index. Add functions to scan these new map objects: create-map-cursor, next-map-cursor, previous-map-cursor and free-map-cursor.
1.2.3 Fix bug in retrieving index values using an index-cursor when the index is empty. Fix rare btree bug that can occur when the btree must be grown.
1.2.2 Fix issues with the :verify :full option to open-database
  • it would incorrectly signal an error if there were missing index files
  • it would use too much memory if the btrees scanned were very large
1.2.1 Some fixes were made to the new btree module.
1.2.0 The database file format in this release in incompatible with previous releases. You must save-database/restore-database or better recover-from-log in order to upgrade an old database to this version
  • There is a new improved format for the b-tree files that uses less space and performs better.
  • A fix was made to index lookups that affect non-numeric data. Without this fix there was a very slight possibility that some non-numeric indexed values may not be visible to retrieve-from-index.
  • recover-from-log can now handle millions of deleted objects since it can now store the deletion information in a b-tree on disk.
1.1.17
  • Fix bug where some index information could remain in the database even if a commit failed due to a unique index violation
  • save-database will no longer print characters in comments that are not allowed by xml
  • fix problem in recover-from-log where no longer needed indexes were created.
  • the condition update-failure is now a subclass of error so ignore-errors will correctly ignore this condition.
1.1.16 Make check for violation of a :any-unique index more accurate. If a needed decode-object method is not defined issue a warning. Speed up storing of index values for new objects.
1.1.15
  • Fix bug where structure encoding via a user-defined encode-value function no longer worked.
  • When a commit is done signal an error if two modified or created instances violate the uniqueness required of an :any-unique index.
  • When a class is defined create the index btrees immediately so that :verify :full will not signal a missing index error
1.1.14 Client/Server protocol change - the client from this version must not connect to servers from older versions.
  • Fix client/server bug where cursors were not freed, thus slowing down the server on client disconnect
  • Speed up deleted-instance-p
1.1.13
  • export mark-instance-modified.
  • server worker threads now have unique names
1.1.12 Fix bug where classes would be considered redefined every time a database was opened in :use :memory mode.
1.1.11
  • When a commit error occurs, describe the exact problem that caused the commit failure.
  • If you open a database with :use :memory and do a rollback, don't lose the in-memory defintions of classes and use the database versions.
  • Do a better job of noticing when a class is really changed thus eliminating a lot of new class versions being created in database
  • in save-database flush the btree cache after each class is written thus reducing the memory needed to do a large save-database
1.1.10 Add functions
  • delete-persistent-class
  • set-member - very fast set membership test
  • previous-index-cursor - scan index values in reverse
1.1.9 Add oid-to-object* and retrieve-from-object* functions.
1.1.8 Add set-count and index-count functions
1.1.7 Fix problem in opening up the database when the last log file is corrupted at the end.
1.1.6 Fix bug in which map data was not stored to the log, thus preventing recover-from-log from restoring the complete database from the log
1.1.5 Fix bugs and inefficiencies in recover-from-log.
Add the function set-count.
1.1.4 When opening a database you can specify how much effort (and thus time) AllegroCache will expend in verifying that the database is valid. See the documentation on the :verify argument to the open-file-database and start-server
1.1.2
  • Allow old *allegrocache* db objects to be garbage collected and the associated heap space for caches to be reclaimed.
  • fix problems in deleting set objects
  • add functions kill-client-connection and connection-alive-p to make it easier to manage client/server databases.
  • default transaction log is now 200Mb
1.1.1 Added Log File Compression and documented the Transaction log functions.
1.1.0 The form of the database has been changed to facilitate crash recovery. This is a preliminary release and the documentation of the new features is not ready yet.
1.0.7
  • add flush-object-cache function
  • add object-cache-size argument to open-network-database
1.0.6 In this version strings in the database are stored in utf-8 rather than double byte characters. As a result in order to make use of databases written in an older version you must save-database the database (running in the old version of AllegroCache) and restore-database in this version of AllegroCache.
Another change in this version is that a lisp character has been added to the list of data types storable persistently.
1.0.4
  • fix bug in deleted-instance-p which could fail if object's class wasn't stored in the database yet
  • fix issues in low level caching which would prevent caches staying as small as they should
  • allocate low level buffers in old space to prevent newspace growth
1.0.3
  • You can now redefine a class to have an index on a slot. At commit time the index will be populated from all existing objects of the class.
  • If you now redefine a persistent class stored in the database the new definition will be stored in the database without your having to create a new object to reference an existing object.
  • A new facility for defining classes and creating print methods has been added. The macros are defclass* and defprinter. See the acache.pdf file for details.
1.0.2
  • the uniqueness constraint for indexes declared :any-unique will be checked at commit time and an error signaled if this constraint is violated.
  • slot-makunbound now works for persistent classes
  • client/server - fix bug which occurred when same class was defined simultaneously by different clients.
  • with-transaction-restart will now report the error that caused the transaction to restart.
1.0.1
  • add ability for user to encode/decode structure and non-persistent clos objects in the database
  • add function to return the list of client-connections currently active
  • export database-open-p
  • fix bug in save-database where indexes that weren't used since the database was last opened were not saved
0.9.18 Fixed bug in the retrieval of large keys or values that could result in a 'seek error' from the stream code.
0.9.17 Fixed a bug in the storing of indicies introduced when range capable indicies were added. Changed btrees to flush all blocks when one block needs to be flushed, thus keeping the btree data on disk always in sync.
0.9.16 you can now specify via the :use argument to open-file-database and open-network-database that the class definitions in memory are to take precedence over those in the database.
0.9.15 Fixed bug in overflow block handling btrees which resulted in index out of range errors
0.9.14 Fixed bug in index retrieval when the index value is a large integer
0.9.13
  • documented cursor and index range functions
  • deleted-instance-p will work better in client-server mode
  • close-database won't signal an error if network connection is down
0.9.12 The are many improvements in this version but we recommend not upgrading unless you're having problems with 0.9.10. We are releasing this version before we've finished testing and documenting the new features in order to solve some issues people currently have with 0.9.10.

In this version we reclaim space when objects are deleted from the low level btrees used in the code. This resulted in the btree structure being changed which then results in old databases being unreadable in this new version. save-database/restore-database can be used to update existing databases to this version. The maximum file size of a btree is now 16 terrabytes.

This version supports searching an index by range and accessing an index using a cursor. Documentation is not available yet however.

Do not use this version on an amd64 running Linux unless you have the new NaN patch installed.

0.9.10 This fixes a problem in building the 0.9.9 distribution fasl file. The 0.9.9 version has been withdrawn.
0.9.9
  • The database format for this version is incompatible with previous versions and the change is so significant that there is no way to update older databases to this new version.
  • The close-database function has a different and incompatible signature but one that is more in line with the other functions in AllegroCache.
  • client-server connections now have serial numbers on the packets. This will help detect situations where more than one lisp thread is using the same database connection.
  • the server does not need to instantiate classes stored in the database thus fixing a number of problems such as persistent classes subclassing non-persistent classes (which are not stored in the database).
  • You can enable authentication for client connections to the server. We supply a name/password authentication but you can write your own as well
  • on Windows event callbacks are disabled while the client is waiting for a server response -- this helps eliminate inadvertant overlapping use of a single database connection
  • the object-cache-size and (setf object-cache-size) functions allow the program to control the object cache on a class by class basis
0.9.6
  • fix bug in doclass/doset: now (return) will return from the iteration
  • fix bug in multi-gigabyte btrees where overflow pointers were truncated.
0.9.5 If a commit fails in the middle (often due to acache encountering an object it can't store) none of the data already stored in the database during the commit will be visible.
0.9.4 include pcache.fasl file which links allegrocache and prolog
0.9.3 Fixed bug in client/server when class redefined to include in its superclass list a persistent class not yet stored in the database.
0.9.1 Fixed serious bug in 0.9.0 in indexing
0.9.0
  • The database format changed incompatibly. You cannot read old databases with this version and vice versa. Also save/restore database cannot be used to automatically transfer data between old and new versions
  • maps are now regular persistent objects and can be created with make-instance. See acache.pdf for details
  • iteration macros rewritten slightly..In order to use this version you should recompile all your source code so you have the latest definitions
  • client/server interactions speed up
  • doclass* macro added that acts like doclass but also returns objects of subclasses of the given class
  • database filenames can now be pathnames and even logical pathnames
0.8.1
  • Fixed bug client/server where redefined class with new slot with index would fail
  • ac will detect and signal an error if you create a map that some other client has created
  • fixed bug where index entires could be accidentally deleted
  • added function to return the last transction number seen by the client
  • updated the acache.pdf document to describe how transactions work and in particular how multiple clients interact when accessing the same database
0.8.0
  • added save-database and restore-database commands
  • updated the documentation acache.pdf
0.7.8
  • references to deleted objects found on the database will now be nil. This is how it was always designed to work but bugs had prevented this from working correctly.
  • When a class is saved to the database all superclasses of metaclass persistent-class will be saved as well if they are not already saved.
0.7.7
  • map-value nows returns a second value of t if a value with the given key was found in the map.
  • added function remove-from-map
  • some fixes in retrieve-from-index as regards returning deleted instances but there are still more fixes to be made
  • unsigned-byte 8 vectors are now stored correctly in the database
0.7.4 Further important fixes to client/server mode.
0.7.3 Improvements to the client/server mode. Object cache is now a strong hash table and weak entries are added when the table starts to fill up.
0.7.2
  • added slot-exists-p
  • fixed bug in storing data in a map
  • further low level btree improvements
0.7.1 The backend is no longer bdb, it is now a btree package written in Lisp. The format of the database files has changed and older databases cannot be read with this version.
0.6.3
  • after allegrocache is loaded a 'provide' is done for :acache and :allegrocache is added to the *features* list
  • the user package is no longer made to use :db.allegrocache after allegrocache is loaded.
  • use weak hash tables for local cache of objects so the cache stays reasonably sized.
0.6.2
    For windows fixed the loading of the dll's so that they load from the distribution directory.
  • Update User guide
  • Ensure AllegroServe is loaded in
0.6.1
  • added with-transaction-restart macro
  • updated documentation
  • fixed bug in saving persistent set values

Version Compatibility

Version read one version older db save/restore or recover-from-log must rebuild client protocols server protocols
2.2.2 - 2.2.0 yes from 1.0.1 onward no 0-5 1-5
2.1.23 - 2.1.8 yes from 1.0.1 onward no 0-4 1-4
2.1.7 - 2.1.3 yes from 1.0.1 onward no 0-3 1-3
2.1.2 - 2.1.1 yes from 1.0.1 onward no 0-2 1-2
2.1.0 yes (see note 1) from 1.0.1 onward no 0-2 1-2
2.0.1 yes from 1.0.1 onward no 0-1 1
2.0.0 yes from 1.0.1 onward no 0 0
1.2.7 yes from 1.0.1 onward no (see note 2) 0 0
1.2.6 - 1.2.1 yes from 1.0.1 onward no 0 0
1.2.0 no from 1.0.1 onward no 0 0
1.1.17 - 1.1.1 yes from 1.0.1 onward no 0 0
1.1.0 no from 1.0.1 onward no 0 0
1.0.7 yes from 1.0.1 onward no 0 0
1.0.6 no from 1.0.1 onward no 0 0
1.0.5 no no yes 0 0
1.0.4 - 1.0.2 yes from 1.0.1 onward no 0 0
1.0.1 - 1.0.0 yes no no 0 0
read older db specifies whether this version can read databases written with the previous version.
save/restore is true if a save of a database done by the previous version(s)can be restored and run in this version
must rebuild is true if there is no way to use data in databases written by previous versions.
client protocols is a pair of numbers, min and max., which is the range of protocols this client can speak. Likewise server protocols is a also pair of numbers: min and max. A client of one version can talk to a server of another version if the intersection of their protocol ranges is non empty

Note 1 - version 2.1.0 creates version 9 databases but can read version 8 or version 9 database. See "Upgrading Databases" in the AllegroCache reference manual for details.

Note 2 - version 1.2.7 databases don't have to be rebuilt but code using doclass or doclass* should be recompiled.

Old Versions

Operating systemACL versionFile
Windows 8.2 acache-2.1.21-acl8.2-windows32.zip
Windows 8.2 acache-2.1.17-acl8.2-windows32.zip
Windows 8.2 acache-2.1.13-acl8.2-windows32.zip
Windows 8.1 acache-2.1.17-acl8.1-windows32.zip
Windows 8.1 acache-2.1.13-acl8.1-windows32.zip
64-bit Windows 8.2 acache-2.1.21-acl8.2-windows64.zip
64-bit Windows 8.2 acache-2.1.17-acl8.2-windows64.zip
64-bit Windows 8.2 acache-2.1.13-acl8.2-windows64.zip
64-bit Windows 8.1 acache-2.1.17-acl8.1-windows64.zip
64-bit Windows 8.1 acache-2.1.13-acl8.1-windows64.zip
Mac OS X (Intel) 8.2 acache-2.1.21-acl8.2-mactel32.tgz
Mac OS X (Intel) 8.2 acache-2.1.17-acl8.2-mactel32.tgz
Mac OS X (Intel) 8.2 acache-2.1.13-acl8.2-mactel32.tgz
Mac OS X (Intel) 8.1 acache-2.1.17-acl8.1-mactel32.tgz
Mac OS X (Intel) 8.1 acache-2.1.13-acl8.1-mactel32.tgz
64-bit Mac OS X (Intel) 8.2 acache-2.1.21-acl8.2-mactel64.tgz
64-bit Mac OS X (Intel) 8.2 acache-2.1.17-acl8.2-mactel64.tgz
64-bit Mac OS X (Intel) 8.2 acache-2.1.13-acl8.2-mactel64.tgz
64-bit Mac OS X (Intel) 8.1 acache-2.1.17-acl8.1-mactel64.tgz
64-bit Mac OS X (Intel) 8.1 acache-2.1.13-acl8.1-mactel64.tgz
Mac OS X 8.1 acache-2.1.13-acl8.1-macosx32.tgz
64-bit Mac OS X 8.1 acache-2.1.13-acl8.1-macosx64.tgz
64-bit Linux (x86-64) 8.2 acache-2.1.21-acl8.2-linux64.tgz
64-bit Linux (x86-64) 8.2 acache-2.1.17-acl8.2-linux64.tgz
64-bit Linux (x86-64) 8.2 acache-2.1.13-acl8.2-linux64.tgz
64-bit Linux (x86-64) 8.1 acache-2.1.17-acl8.1-linux64.tgz
64-bit Linux (x86-64) 8.1 acache-2.1.13-acl8.1-linux64.tgz
Linux (x86) 8.2 acache-2.1.21-acl8.2-linux32.tgz
Linux (x86) 8.2 acache-2.1.17-acl8.2-linux32.tgz
Linux (x86) 8.2 acache-2.1.13-acl8.2-linux32.tgz
Linux (x86) 8.1 acache-2.1.17-acl8.1-linux32.tgz
Linux (x86) 8.1 acache-2.1.13-acl8.1-linux32.tgz
Solaris 8.2 acache-2.1.21-acl8.2-solaris32.tgz
Solaris 8.2 acache-2.1.17-acl8.2-solaris32.tgz
Solaris 8.2 acache-2.1.13-acl8.2-solaris32.tgz
Solaris 8.1 acache-2.1.17-acl8.1-solaris32.tgz
Solaris 8.1 acache-2.1.13-acl8.1-solaris32.tgz
64-bit Solaris 8.2 acache-2.1.21-acl8.2-solaris64.tgz
64-bit Solaris 8.2 acache-2.1.17-acl8.2-solaris64.tgz
64-bit Solaris 8.2 acache-2.1.13-acl8.2-solaris64.tgz
64-bit Solaris 8.1 acache-2.1.17-acl8.1-solaris64.tgz
64-bit Solaris 8.1 acache-2.1.13-acl8.1-solaris64.tgz
64-bit Solaris (x86-64) 8.2 acache-2.1.21-acl8.2-solarisamd64.tgz
64-bit Solaris (x86-64) 8.2 acache-2.1.17-acl8.2-solarisamd64.tgz
64-bit Solaris (x86-64) 8.2 acache-2.1.13-acl8.2-solarisamd64.tgz
64-bit Solaris (x86-64) 8.1 acache-2.1.17-acl8.1-solarisamd64.tgz
64-bit Solaris (x86-64) 8.1 acache-2.1.13-acl8.1-solarisamd64.tgz
FreeBSD 8.2 acache-2.1.21-acl8.2-freebsd32.tgz
FreeBSD 8.2 acache-2.1.17-acl8.2-freebsd32.tgz
FreeBSD 8.2 acache-2.1.13-acl8.2-freebsd32.tgz
FreeBSD 8.1 acache-2.1.17-acl8.1-freebsd32.tgz
FreeBSD 8.1 acache-2.1.13-acl8.1-freebsd32.tgz
AIX 8.2 acache-2.1.21-acl8.2-aix32.tgz
AIX 8.2 acache-2.1.17-acl8.2-aix32.tgz
AIX 8.2 acache-2.1.13-acl8.2-aix32.tgz
AIX 8.1 acache-2.1.17-acl8.1-aix32.tgz
AIX 8.1 acache-2.1.13-acl8.1-aix32.tgz
64-bit AIX 8.2 acache-2.1.21-acl8.2-aix64.tgz
64-bit AIX 8.2 acache-2.1.17-acl8.2-aix64.tgz
64-bit AIX 8.2 acache-2.1.13-acl8.2-aix64.tgz
64-bit AIX 8.1 acache-2.1.17-acl8.1-aix64.tgz
64-bit AIX 8.1 acache-2.1.13-acl8.1-aix64.tgz
HP-UX 11.00 8.1 acache-2.1.13-acl8.1-hpux32.tgz
64-bit HP-UX 11.00 8.1 acache-2.1.13-acl8.1-hpux64.tgz

Copyright © 2014 Franz Inc., All Rights Reserved | Privacy Statement
Delicious Google Buzz Twitter Google+