summaryrefslogtreecommitdiff
path: root/sqlQueries.go
diff options
context:
space:
mode:
authorDaniel Langesten <daniel.langest@gmail.com>2015-03-12 12:51:48 +0100
committerDaniel Langesten <daniel.langest@gmail.com>2015-03-12 12:51:48 +0100
commit114328feccb6ce3dbd16219fc456a34d00f72ec6 (patch)
tree179b9ff50487523ab2c139ad645976bb49afadbd /sqlQueries.go
parentdc28b63102b26c34db2e056972d0b7173e263652 (diff)
Added support for how many entries that should be processed at a time.
Diffstat (limited to 'sqlQueries.go')
-rw-r--r--sqlQueries.go19
1 files changed, 15 insertions, 4 deletions
diff --git a/sqlQueries.go b/sqlQueries.go
index 99a35d2..805248c 100644
--- a/sqlQueries.go
+++ b/sqlQueries.go
@@ -11,16 +11,27 @@ const (
TIMEZONE = "UTC"
)
-//Retrieves all rawdata older than tim
-func fetchRawData(db *sql.DB, tim time.Time) (rDat []RawData, err error) {
+//Retrieves limit rawdata entries that are older than tim
+//limit <= 0 returns all entries that are older than tim
+func fetchRawData(db *sql.DB, tim time.Time, limit int) (rDat []RawData, err error) {
- prepSel, err := db.Prepare("SELECT ip_src,ip_dst,time,port,packet_size FROM raw_data WHERE time < ?")
+ var prepSel *sql.Stmt
+ if limit > 0 {
+ prepSel, err = db.Prepare("SELECT ip_src,ip_dst,time,port,packet_size FROM raw_data WHERE time < ? LIMIT ?")
+ } else {
+ prepSel, err = db.Prepare("SELECT ip_src,ip_dst,time,port,packet_size FROM raw_data WHERE time < ?")
+ }
if err != nil {
log.Println("Failed to prepare select")
return
}
- rows, err := prepSel.Query(tim)
+ var rows *sql.Rows
+ if limit > 0 {
+ rows, err = prepSel.Query(tim, limit)
+ } else {
+ rows, err = prepSel.Query(tim)
+ }
if err != nil {
log.Println("Failed to query prepared selection")
return