posix_getgrgid()['members'] should be empty array if no users found

Summary: Rather than null

Fixes one zend test
Closes https://github.com/facebook/hhvm/pull/3686

Reviewed By: @sgolemon

Differential Revision: D1541608
make slow tests pass on centos 6.3 cmake

Summary: There are only 2 tests which fail on our boxes, so I think skipping them is worth the effort to get all the extra testing.

Reviewed By: @paulbiss

Differential Revision: D1543645
Convert from jemalloc's obsolete *allocm() to *allocx().

Summary: Convert from jemalloc's obsolete *allocm() to *allocx().

Strengthen goodMallocSize() to always return a jemalloc size class, so
that xallocx() success/failure detection is simple.

Reviewed By: @andralex

Differential Revision: D1535841
Add option for saying which nginx binary to use

Summary: Some packages don't install it into $PATH

refs facebook/hhvm#3664

Reviewed By: @ptarjan

Differential Revision: D1544870
Use EqX instead of Eq for Obj/Num comparisons.

Summary: Converting an Obj to Int or Dbl will reenter the VM to raise a notice.

Reviewed By: @jano

Differential Revision: D1542454
Update third-party
Improve process cleanup for OSS benchmarker

Summary: - HHVM attempts to shutdown via admin server first. Catch failures there, and fall back on killing the process
- Check that the streams are still valid before attempting to close them

refs facebook/hhvm#3664

Reviewed By: @JoelMarcey

Differential Revision: D1545273
Update cmake files to require jemalloc >= 3.5.1

Summary: @jasone landed a diff this morning which requires the allocx()
APIs in jemalloc.  Provide a useful error message if our version is
too old.

Reviewed By: @JoelMarcey

Differential Revision: D1545626
Add T_FINALLY to constants

Summary: Fixes #3703
Closes https://github.com/facebook/hhvm/pull/3708

Reviewed By: @sgolemon

Differential Revision: D1544682
make class closure consist with PHP

Summary: See #3431
Closes https://github.com/facebook/hhvm/pull/3460

Reviewed By: @sgolemon

Differential Revision: D1496023
Teach Hack about more curl constants

Reviewed By: @jwatzman

Differential Revision: D1541320
Refactor the parsing and processing of configuration options ... just a bit ...

Summary: ... and fix some bugs too :)

I was running into problems where it seemed like `-v` overrides were not being respected. So I wanted
to make sure that we had one goto place for parsing, processing and binding of configuration opens,
for easier debugging. This ended up into a bit of a refactor of our configuration option process.

Found a bug in `IniSetting::Set` where updates were not happening to existing pairs. This might
have been the biggest find during this whole process.

The second biggest find was probably the sort of subtle re-parsing of ini files for extension constants.
Right now we parse the whole file again; thus un-overriding any overrides that were given at the command
line. Needed to be a bit more clever on how we do this.

Reviewed By: @ptarjan

Differential Revision: D1524620
add low memory counters to ods

Summary: add fields for tracking low memory usage to jemalloc stats page. This will get picked up by ods automatically.

Reviewed By: @jasone

Differential Revision: D1537171
Use smart_calloc in NameValueTable

Summary: Don't leak memory.

Reviewed By: @mclarkelauer

Differential Revision: D1545494
More wordpress unfreezing

Summary: sadpanda

Reviewed By: @JoelMarcey

Differential Revision: D1545919
Fix guard relaxation to work with bytecode control flow

Summary: Due to control flow, a local may have multiple type sources at each program point. So change FrameState to keep the set of type sources for each local, instead of a single one. Also, get rid of None type-source kind.

Reviewed By: @alexmalyshev

Differential Revision: D1535860
Fix flush_evaluation_stack

Summary: A test had been inserted to prevent it flushing the stack and rds
for rpc threads; but the test disabled it entirely.

Added a better check.

Reviewed By: @bertmaher, @edwinsmith

Differential Revision: D1545777
Allow vm-stack flushing in rpc threads

Summary: We disabled the flush in rpc threads, on the grounds that the
execution context lives across requests. However, the execution context
is never *required* to live across requests, and could be reset for a
number of reasons at the start of the next request.

So instead, we reset the request, and then flush. This also solves (at
least in practice) the issue of rpc requests keeping treadmill fromd
working.

Reviewed By: @bertmaher, @dariorussi

Differential Revision: D1546288
Add some support for readline.

Summary: I think it would be nice to move parts of hphpd over to PHP-land, and having readline available would help with that.

Reviewed By: @ptarjan

Differential Revision: D1538831
Attempt to fix t5058784

Summary: Avoid a possible race condition with static properties

Reviewed By: @markw65

Differential Revision: D1547427