Skip to content

Latest commit

 

History

History
 
 

README

-*- mode:org -*-

Requirements:

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

Use r->file to determine file, doing rewriting in translate_name

Change to controlling lifecycle by passing in a pool?

Need to determine how to handle server scoped then!

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

Filters

Mapping in the server_rec

Connection scoped vms

Figure out how reentrancy works regarding filter chain stuff.

Do we need new “threads”?

Flesh out apw_*getvm for each flavor we allow

Rework apw_sgetvm to use the create_vm stuff like apw_rgetvm

apw_rgetvm needs to handle connection scoped vms

options in server scoped vms (ie, min and max vm counts)

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 [email protected] for discussing mod_lua development To subscribe send email to [email protected] 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