Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-1469

Asynchronous table creation

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 0.13.0
    • 0.14.0
    • None
    • None

    Description

      In some of my code i found it efficient to create a new table without immediately requiring (blocking for) the client to have references to it's HRegions. Effectively this requires that the client update the table info only as needed.

      Can something like the following method to HClient be added?

      /**

      • Creates a new table but does not block and wait for it to come online.
      • @param desc -
      • table descriptor for table
      • @throws IllegalArgumentException -
      • if the table name is reserved
      • @throws MasterNotRunningException -
      • if master is not running
      • @throws NoServerForRegionException -
      • if root region is not being served
      • @throws IOException
        */
        public synchronized void createTableAsync(HTableDescriptor desc)
        throws IOException
        Unknown macro: { checkReservedTableName(desc.getName()); checkMaster(); try { this.master.createTable(desc); } catch (RemoteException e) { handleRemoteException(e); } }

      which is basically the same as createTable() except without the findServersForTable(desc.getName()) part.

      Attachments

        1. hadoop1469.patch
          2 kB
          Michael Stack

        Activity

          People

            stack Michael Stack
            james.kennedy James Kennedy
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: