Formalize max pluckers
diff --git a/include/grpc/grpc.h b/include/grpc/grpc.h
index 17906c8..d29f71b 100644
--- a/include/grpc/grpc.h
+++ b/include/grpc/grpc.h
@@ -391,10 +391,17 @@
     otherwise a grpc_event describing the event that occurred.
 
     Callers must not call grpc_completion_queue_next and
-    grpc_completion_queue_pluck simultaneously on the same completion queue. */
+    grpc_completion_queue_pluck simultaneously on the same completion queue. 
+    
+    Completion queues support a maximum of GRPC_MAX_COMPLETION_QUEUE_PLUCKERS
+    concurrently executing plucks at any time. */
 grpc_event grpc_completion_queue_pluck(grpc_completion_queue *cq, void *tag,
                                        gpr_timespec deadline);
 
+/** Maximum number of outstanding grpc_completion_queue_pluck executions per
+    completion queue */
+#define GRPC_MAX_COMPLETION_QUEUE_PLUCKERS 6
+
 /** Begin destruction of a completion queue. Once all possible events are
     drained then grpc_completion_queue_next will start to produce
     GRPC_QUEUE_SHUTDOWN events only. At that point it's safe to call
diff --git a/src/core/surface/completion_queue.c b/src/core/surface/completion_queue.c
index 732813f..6bfccd2 100644
--- a/src/core/surface/completion_queue.c
+++ b/src/core/surface/completion_queue.c
@@ -45,8 +45,6 @@
 #include <grpc/support/atm.h>
 #include <grpc/support/log.h>
 
-#define MAX_PLUCKERS 4
-
 typedef struct {
   grpc_pollset_worker *worker;
   void *tag;
@@ -68,7 +66,7 @@
   int shutdown_called;
   int is_server_cq;
   int num_pluckers;
-  plucker pluckers[MAX_PLUCKERS];
+  plucker pluckers[GRPC_MAX_COMPLETION_QUEUE_PLUCKERS];
 };
 
 grpc_completion_queue *grpc_completion_queue_create(void) {
@@ -205,7 +203,7 @@
 
 static void add_plucker(grpc_completion_queue *cc, void *tag,
                         grpc_pollset_worker *worker) {
-  GPR_ASSERT(cc->num_pluckers != MAX_PLUCKERS);
+  GPR_ASSERT(cc->num_pluckers != GRPC_MAX_COMPLETION_QUEUE_PLUCKERS);
   cc->pluckers[cc->num_pluckers].tag = tag;
   cc->pluckers[cc->num_pluckers].worker = worker;
   cc->num_pluckers++;