summaryrefslogtreecommitdiff
path: root/modules/lua/README
diff options
context:
space:
mode:
authorArno Töll <debian@toell.net>2012-01-08 22:53:17 +0100
committerArno Töll <debian@toell.net>2012-01-08 22:53:17 +0100
commite072a2dd866b7cb9f14319b80326a4e7fd16fcdf (patch)
treea49dfc56d94a26011fe157835ff6cbe14edbd8a9 /modules/lua/README
parent0890390c00801651d08d3794e13b31a5dabbf5ef (diff)
downloadapache2-e072a2dd866b7cb9f14319b80326a4e7fd16fcdf.tar.gz
Imported Upstream version 2.3.16-beta
Diffstat (limited to 'modules/lua/README')
-rw-r--r--modules/lua/README77
1 files changed, 77 insertions, 0 deletions
diff --git a/modules/lua/README b/modules/lua/README
new file mode 100644
index 00000000..4efa9cd6
--- /dev/null
+++ b/modules/lua/README
@@ -0,0 +1,77 @@
+-*- mode:org -*-
+* Requirements:
+** lua 5.1 ( http://www.lua.org/ )
+** Apache HTTPD 2.2 ( http://httpd.apache.org/ ) or Apache HTTPD 2.3
+
+* Documentation
+ See docs/README
+
+* Building
+ For now, see docs/building-from-subversion.txt
+
+* To Consider
+ Allow definition of lua_State instances associated with arbitrary
+ pool using the pool's user_data constuct. There would, here, be two
+ types, pooled and singleton. On the other hand, singleton would work
+ fine for almost all cases -- the exception being a process or server
+ pool, and then we could stay singleton anyway and lock around it.
+
+ The current "server scope" behavior could, instead, fall into
+ connection scope, for long-lived connections, really we want thread
+ scope (which Brian Akins knows how to do). Is there a pool
+ associated with a thread? Contention on the pool is a pain in a
+ highly concurrent environment.
+
+ Could use apr_thread_data_(get|set) if I can find a way to hook into
+ thread destruction. Looks like apr threads let you use the standard
+ APR_POOL_DECLARE_ACCESSOR(thread); defined method, just need to look
+ up what form that takes. -- apr_thread_pool_get -- just attach to
+ that pool.
+
+ Given that, we can associate a hash of lua_State instances with
+ arbitrary pools, such as the request pool, thread pool, server pool,
+ etc. We then use the file as key into the hash. Users, able to
+ specify the handler function, can then make use of the same file
+ with different handlers to reuse states.
+
+
+
+* Task List
+** TODO Use r->file to determine file, doing rewriting in translate_name
+** TODO Change to controlling lifecycle by passing in a pool?
+ Need to determine how to handle server scoped then!
+** TODO Provide means to get useful output from lua errors in response body
+ Probably have to put it on the vm spec for pre-handler errors, as
+ it is pre-handler, will prolly be on the request_config somewhere,
+ but sometimes cannot put there, so... fun
+** TODO Filters
+** TODO Mapping in the server_rec
+** TODO Connection scoped vms
+** TODO Figure out how reentrancy works regarding filter chain stuff.
+ Do we need new "threads"?
+** TODO Flesh out apw_*getvm for each flavor we allow
+** TODO Rework apw_sgetvm to use the create_vm stuff like apw_rgetvm
+** TODO apw_rgetvm needs to handle connection scoped vms
+** TODO options in server scoped vms (ie, min and max vm counts)
+** TODO provide means to implement authn and authz providers
+
+* License
+ Apache License, Version 2.0,
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ See NOTICE file for more information
+
+* Problems and Patches:
+ Please use dev@httpd.apache.org for discussing mod_lua development
+ To subscribe send email to dev-subscribe@httpd.apache.org
+ Note that this is for development discussion, not user support :-)
+
+* Contributors Include
+** Brian McCallister
+** Paul Querna
+** Garrett Rooney
+** Martin Traverso
+** Brian Akins
+** Justin Erenkrantz
+** Philip M. Gollucci