Skip to content

Instantly share code, notes, and snippets.

View MMcM's full-sized avatar

Mike McMahon MMcM

  • San Francisco, CA
View GitHub Profile
@MMcM
MMcM / TestJavaBasic.java
Last active October 29, 2018 03:46
FoundationDB SQL Layer Java Routine Example
package com.foundationdb.example;
public class TestJavaBasic
{
public static void addSub(int x, int y, int[] sum, int[] diff) {
sum[0] = x + y;
diff[0] = x - y;
}
}
@MMcM
MMcM / FDBRoutines.java
Last active August 29, 2015 14:05
Stored procedures to access key-value store from SQL layer transaction
package com.foundationdb.example;
import com.foundationdb.Transaction;
import com.foundationdb.directory.DirectoryLayer;
import com.foundationdb.server.store.FDBTransactionService.TransactionState;
import com.foundationdb.server.store.FDBTransactionService;
import com.foundationdb.sql.server.ServerCallContextStack;
import com.foundationdb.sql.server.ServerQueryContext;
import java.util.Arrays;
@MMcM
MMcM / Gemfile.patch
Created October 10, 2014 21:39
disapora* on FoundationDB SQL layer
diff --git a/Gemfile b/Gemfile
index 678a5d2..d5748b4 100644
--- a/Gemfile
+++ b/Gemfile
@@ -56,6 +56,7 @@ ENV['DB'] ||= 'mysql'
gem 'mysql2', '0.3.16' if ENV['DB'] == 'all' || ENV['DB'] == 'mysql'
gem 'pg', '0.17.1' if ENV['DB'] == 'all' || ENV['DB'] == 'postgres'
+gem 'activerecord-fdbsql-adapter', github: 'FoundationDB/sql-layer-adapter-activerecord' if ENV['DB'] == 'all' || ENV['DB'] == 'fdbsql'
@MMcM
MMcM / 00-README.md
Last active August 29, 2015 14:08
Converting JBoss application to use shared FDB to avoid api_version_already_set

Converting to shared FDB

  • Find the system modules directory, which is something like $JBOSS_HOME/modules or .../jboss-eap/modules/system/layers/base/.

  • Add a new directory com/foundationdb/main there. (There should already be com and org or you probably don't have the right starting directory.)

  • Put the module.xml file into that new directory.

@MMcM
MMcM / OCD.java
Created November 24, 2014 21:38
Save OCD experiment for posterity
/**
* Copyright (C) 2009-2013 FoundationDB, LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
#!/bin/bash
tmux kill-session -t SQL || true
tmux new-session -d -n SQL -s SQL "fdbsqlcli test | tee /tmp/SQL0.out"
tmux split-window -t SQL "fdbsqlcli test | tee /tmp/SQL1.out"
count_prompts()
{
grep "=>" /tmp/SQL$1.out | wc -l
}
@MMcM
MMcM / FDBSQLDriver.scala
Last active August 29, 2015 14:10
Slick driver for FDB SQL Layer.
package com.foundationdb.slick.driver
import java.sql.{PreparedStatement, ResultSet}
import java.util.UUID
import scala.slick.ast._
import scala.slick.lifted._
import scala.slick.driver.JdbcDriver
import scala.slick.jdbc.JdbcType
import scala.slick.jdbc.meta.MTable
import scala.slick.model.Model
@MMcM
MMcM / k505.el
Last active August 29, 2015 14:21
Logitec Kanji tablet interface
;;; -*- Mode: Emacs-Lisp; coding:shift_jis -*-
;;; Logitec K-505 Kanji tablet (漢字入力装置) interface for XEmacs.
(provide 'k505)
(if (string-match "XEmacs" emacs-version)
(progn
(defun k505-string-bytes (str)
@MMcM
MMcM / 00-README.md
Created January 16, 2016 17:43
klh10 hacks

Files from 2003 that were in Comcast before they discontinued PWP.

@MMcM
MMcM / 00-README.md
Last active May 29, 2023 05:23
CoreELEC on M92S PLUS

A cheap Android TV Box from a few years ago.

The standard CoreELEC works with gxm_q200_2g, except the clock and remote.

The clock itself works as an m82, but not the dots.