139 Commits

Author SHA1 Message Date
Pavlo Yatsukhnenko 37d8bfde06 refactoring 2016-12-13 17:39:04 +02:00
Pavlo Yatsukhnenko 0a886fef22 TravisCI: make clang happy with older php versions 2016-12-06 11:18:09 +02:00
Pavlo Yatsukhnenko 433caf4788 refactoring 2016-11-21 17:46:58 +02:00
Pavlo Yatsukhnenko 3d7da1fdb6 refactoring 2016-11-20 21:07:24 +02:00
Pavlo Yatsukhnenko 6d6deae573 TravisCI: clang + refactoring 2016-11-18 18:57:44 +02:00
Pavlo Yatsukhnenko 14c19fa3a0 refactoring 2016-11-16 18:05:27 +02:00
Pavlo Yatsukhnenko eab93272db refactoring 2016-11-15 19:53:34 +02:00
Pavlo Yatsukhnenko f5ddf53b79 php7 compatibility
The 'l' specifier now expects a zend_long instead of a long
for zend_parse_parameters.
2016-11-14 20:52:51 +02:00
Pavlo Yatsukhnenko af8e9a3f46 php7 compatibility
Define strlen_t (int for php5 and size_t for php7) and use it
as the length argument of the 's' specifier for zend_parse_method_parameters
2016-11-13 21:12:14 +02:00
Pavlo Yatsukhnenko 19f5f708c2 WIP: php7 compatibility 2016-11-11 23:04:27 +02:00
Pavlo Yatsukhnenko 8a4eeecaf3 WIP: php7 compatibility 2016-11-10 21:39:34 +02:00
Pavlo Yatsukhnenko 5f15ce222f WIP: php7 compatibility 2016-11-09 21:03:36 +02:00
Pavlo Yatsukhnenko 04a7327af8 WIP: php7 compatibility 2016-11-08 20:11:51 +02:00
Pavlo Yatsukhnenko 5de84b3d01 WIP: php7 compatibility 2016-11-07 20:18:57 +02:00
Pavlo Yatsukhnenko 8f3deb7f34 Fix static analyzer warnings 2016-11-04 18:21:42 +02:00
Pavlo Yatsukhnenko 8cfebfd98b WIP: php7 compatibility
zend_list_insert + add_assoc_string + add_assoc_zval
2016-10-27 20:35:47 +03:00
Pavlo Yatsukhnenko a1e698873a WIP: php7 compatibility
Redefine add_next_index_string.
Fix zend_fcall_info retval and params.
2016-10-26 18:12:07 +03:00
Pavlo Yatsukhnenko e9c992e425 WIP: php7 compatibility
Define ZEND_SAME_FAKE_TYPE macro and use it instead of Z_TYPE == IS_BOOL
Redefine add_assoc_stringl_ex as macro
2016-10-26 13:28:20 +03:00
Pavlo Yatsukhnenko 750ec8bbdc WIP: php7 compatibility
Redefine ZVAL_STRING + ZVAL_STRINGL macro
2016-10-24 18:00:26 +03:00
Pavlo Yatsukhnenko a2cda39fdc RedisArray refactoring 2016-10-23 23:31:58 +03:00
Pavlo Yatsukhnenko 8f006d70f2 WIP: php7 compatibility
Redefine call_user_function
2016-10-21 17:41:25 +03:00
Pavlo Yatsukhnenko 33a8843c44 RedisArray refactoring 2016-10-10 22:35:34 +03:00
Pavlo Yatsukhnenko 84d9c27813 WIP: php7 compatibility
Define zend_string type + ZEND_HASH_FOREACH_KEY_VAL macro
2016-10-06 18:10:11 +03:00
Pavlo Yatsukhnenko fa8f02946b WIP: php7 compatibility
Wrap zend_list_delete and add_property_resource.
Remove unnecessary zend_hash_get_current_key_ex calls and memmory
allocation.
2016-10-01 12:50:59 +03:00
Pavlo Yatsukhnenko 55540d8808 WIP: php7 compatibility
redis_sock_get + redis_array_get
2016-09-28 23:38:31 +03:00
Pavlo Yatsukhnenko 910dd952bf WIP: php7 compatibility
Rename zend_rsrc_list_entry to zend_resource
2016-09-28 18:30:17 +03:00
Pavlo Yatsukhnenko 2c62090a7d WIP: php7 compatibility
zend_hash_index_find + zend_hash_index_find_ptr
2016-09-21 09:03:32 +03:00
Pavlo Yatsukhnenko 9114530dfc WIP: php compatibility
Redefine zend_get_parameters_array macro for working with `zval *` instead of `zval **`
2016-09-16 09:43:02 +03:00
Pavlo Yatsukhnenko d7931ab340 WIP: php7 compatibility
ZEND_HASH_FOREACH_VAL now works with zval * instead of zval **
2016-09-14 16:46:23 +03:00
Pavlo Yatsukhnenko 46c2de1b8a WIP: php7 compatibility
Redefine `zend_hash_get_current_data` macro as static inline function +
add `zend_hash_get_current_data_ptr` function
2016-09-13 17:15:52 +03:00
Pavlo Yatsukhnenko 12d29886be using zend_hash_str_find+zend_hash_str_find_ptr instead of zend_hash_find 2016-09-09 11:17:51 +03:00
Pavlo Yatsukhnenko 7c9824dbbc ZEND_HASH_FOREACH_VAL macro 2016-09-06 11:54:08 +03:00
michael-grunder 09f7a77294 Call zval destructor if we fall back to prevent leak 2015-01-29 15:31:15 -08:00
Michael Maclean a308b81068 Replace calls to zend_hash_quick_find with NULL arguments 2015-01-28 16:03:05 +00:00
michael-grunder da51f06bcd Merge branch 'int-ra-timeout' into develop 2014-10-22 13:52:52 -07:00
michael-grunder c1f862c99d Remove debug line 2014-10-22 13:52:31 -07:00
michael-grunder 66cdeb6b59 Allow integer connect_timeout in RedisArray
Addresses #520
2014-10-20 12:20:57 -07:00
michael-grunder 0f1f5f444f Merge branch 'hotfix/win32-fixes' into develop
Conflicts:
	redis.c
2014-07-06 11:04:55 -07:00
Anatol Belski cdd4557f01 fix unreferenced variable warnings 2014-07-01 16:59:41 +02:00
Anatol Belski 79efa8d791 fixes after the merge 2014-07-01 16:50:23 +02:00
Anatol Belski 4d2533706a Merge remote-tracking branch 'vostok4/master'
Conflicts:
	CREDITS
	README.markdown
	config.w32
	library.c
	library.h
	package.xml
	redis.c
	redis_array.c
	redis_array.h
	redis_array_impl.c
	redis_array_impl.h
	tests/TestRedis.php
2014-07-01 16:45:09 +02:00
Anatol Belski 6c377eee18 added redis array stuff to win part done some fixes to it 2014-07-01 12:19:01 +02:00
michael-grunder 52b3c95dab SAVE and BGSAVE are distrubte commands
SAVE and BGSAVE need to be passed through multihost_distribute

Refs #472
2014-05-15 12:11:16 -07:00
vostok4 566d673f83 Fix comments for C89 compatibility 2014-04-09 11:21:32 +02:00
vostok4 9c12c40a66 Merge nicolasff:b9a16b5ad5 in, fixing for Win32
Now we should be up to master with upstream for an easier merge.
2014-04-09 11:14:45 +02:00
michael-grunder c81a95413d Merge branch 'hotfix/ra_autorehash' into develop
Conflicts:
	redis_array.c
2014-03-11 09:14:26 -07:00
michael-grunder f72a3177a3 Fix autorehashing in RedisArray
This commit fixes auto rehashing in RedisArray as well as fixes
a couple of memory leaks found along the way

Addresses #442 and #294
2014-03-10 13:18:19 -07:00
Mike 6f5e47cec3 add support for 'connect_timeout' option for redis arrays
Conflicts:
	redis_array.c
	redis_array_impl.c
	redis_array_impl.h
2014-02-23 11:50:34 -08:00
michael-grunder 9eaf14756b Don't attempt MGET on nodes where no keys resolve
The MGET call in RedisArray was failing under circumstances where
none of the passed keys hashed into any given node in the ring.
What was happening is that RedisArray was passing through to the
phpredis MGET command an empty array, which was returning false.
This in turn caused RedisArray to abort the process and return
false as well.

This change updates RedisArray MGET such that if a given node
doesn't have any keys, we skip the call to it all together.

Addresses #435
Addresses #436
2014-02-21 06:12:32 -08:00
vostok4 978fbcf6fc Further fixes for building on VC9 Win32, C89 compliance
Include win32/php_stdint.h on Win32 (fixes compilation on VC9)
Change C++ comments to C89 style (to adhere to PHP project)
2013-10-18 14:37:06 +02:00